멘토께서 피드백을 주신 내용으로 간단한 예제를 만들어 보았다.
코드를 보고, 앗 이런 게 가능하다니!
놀랐다 ^^
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
def go_to_daum():
print('go to daum')
def go_to_naver():
print('go to naver')
def go_to_google():
print('go to google')
MOVE_SITE = {
'daum': go_to_daum,
'naver': go_to_naver,
'google': go_to_google
}
site = 'daum'
MOVE_SITE[site]() # go to daum
|
cs |
*참고로 함수 선언이 MOVE_SITE 딕셔너리 보다 위에 있어야 한다.
선언한 함수들의 위치가 MOVE_SITE 딕셔너리 아래에 있으면 에러가 난다.
어디서 비슷한 걸 본 것 같기도 해서 생각해보니 자바스크립트 코드에서 봤던 것 같기도 하다.
아마 이 책 저 책 예제 따라하다가 뭔지도 모른채 쳐봤을 가능성이 크다.
어쨌든 자바스크립트로도 예제를 만들어 보았다~
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
function go_to_daum(){
console.log('go to daum')
}
function go_to_google(){
console.log('go to google')
}
const MOVE_SITE = {
DAUM : go_to_daum,
GOOGLE : go_to_google,
};
let site = 'DAUM';
MOVE_SITE[site]()
// 출력
// go to daum
|
cs |
* 자바스크립트에서 함수는 따로 return 문을 작성하지 않으면, undefined 를 반환한다.
ㄴ console.log(console.log('test')) 이렇게 되어서 나온 것이었다.(수정)
* 자바스크립에서는 MOVE_SITE 가 함수 선언부 위에 있어도 실행되는 것을 확인했다.
'programming > python' 카테고리의 다른 글
flask key error (깔끔한 파이썬 탄탄한 백엔드) (0) | 2019.07.22 |
---|---|
우분투 미니콘다 설치 (0) | 2019.07.05 |
파이썬 getattr() 함수 (0) | 2019.06.05 |
파이썬 들여쓰기와 return (0) | 2019.06.04 |
파이썬 딕셔너리 get(), setdefault() (0) | 2019.05.16 |