Python은 일급 함수를 지원합니다. 사실, 파이썬의 모든 함수는 일급 함수입니다.
파이썬은 함수에서 함수를 반환하고, 목록과 같은 컬렉션에 함수를 저장하고, 일반적으로 변수나 객체처럼 처리할 수 있습니다.
다른 함수에서 함수를 정의하고 함수를 반환하는 것은 모두 가능합니다.
주어진 코드는 다음과 같이 재작업되었습니다. 함수 내부에 함수를 정의하고 이를 반환합니다.
예시
def f2(c, d): return c, d def f1(a, b): c = a + 1 d = b + 2 return lambda: f2(c,d) result = f1(1, 2) print result print result()
출력
C:/Users/TutorialsPoint1/~.py <function <lambda> at 0x0000000003041CF8> (2, 4)