Python
Make method list or dictionary and Use
#Ubuntu 18.04 LTS
#Python 3.6.6
#- - 상세 설명, 실행화면
딕셔너리로 만들기전 테스트 할 메소드를 만들자
총 4개의 메소드를 만들것이다.
- def test(): void
- def test2(aa=None): void
- def test3(): return 'str'
- def test4(aa=None): return 'str'
간단히 하면 입/출력 유무에 따라 총 4가지를 만들었다.
딕셔너리와 리스트에 메소드를 넣어보자
메소드 출력결과를 넣고 싶다면 value를 메소드명() 으로 적으면 되고, 메소드 자체를 넣고 싶다면 메소드명 만 적으면 된다.
예를 들어 위의 4가지 메소드를 딕셔너리와 리스트에 넣는다면 아래와 같다.
1) 메소드를 딕셔너리로 만들기
A = {'1':test, '2':test2, '3':test3, '4':test4}
2) 메소드 결과 값을 딕셔너리로 만들기
A = {'1':test(), '2':test2('bb'), '3':test3(), '4':test4('cc')}
3) 메소드를 리스트로 만들기
B = [test, test2, test3, test4]
4) 메소드 결과 값을 리스트로 만들기
B = [test(), test2('bb'), test3(), test4('cc')]
type() 함수를 이용해 출력해보면 메소드 명만 입력했을 때는 type이 function으로 나오고,
메소드명(input)/() 로 입력했을 때는 return 되는 type이 출력된다.
딕셔너리? 리스트? 어떤 것에 넣을까?
굳이 이게 낫다! 는 아니지만 보통 순서가 필요하면 리스트, 그렇지 않을 땐 딕셔너리로 주로 사용하는 편이다.
당연히 for문에서도 사용가능함으로 호출해서 쓰기 편하다.
딕셔너리를 key 사용해서 호출하면 딕셔너리에 없는 함수를 호출할 때 try catch 구문이 간결해져서 사용하기 시작했다.
#2018년10월17일
'개발자 레니는 지금 - > 소프트웨어와 함께' 카테고리의 다른 글
[ Python ] Python interface to MySQL: mysqlclient (0) | 2019.04.09 |
---|---|
[ Python ] What Is Pip? A Guide for New Pythonistas (0) | 2019.04.04 |
[ Module ] Struct, c 구조체 호환 (0) | 2018.09.10 |
[ C/C++ ] Type bool (0) | 2018.09.07 |
[ MODULE ] audioop:: pcm data 모노, 스테레오 정보 바꾸기 (0) | 2018.07.16 |