클로저 확인하기
조카에게 Python 프로그래밍을 가르치고 있는데, 중첩 함수를 반환하는 연습을 하고 있어요. 조카는 코드를 올바르게 작성했다고 생각하지만, 반환된 함수가 호출될 때 필요한 정보가 없을까 봐 걱정하고 있네요. 새 함수의 클로저에 필요한 비지역 변수가 모두 들어 있음을 보여 주세요.
이 연습은 강의의 일부입니다
Python으로 함수 작성하기
실습형 인터랙티브 연습
이 예제를 이 샘플 코드를 완성하여 풀어보세요.
def return_a_func(arg1, arg2):
def new_func():
print('arg1 was {}'.format(arg1))
print('arg2 was {}'.format(arg2))
return new_func
my_func = return_a_func(2, 17)
# Show that my_func()'s closure is not None
print(my_func.____ is not None)