[Python] 고차함수와 콜백
파이썬에서는 함수를 변수에 저장해서 값처럼 다룰 수가 있다.


이는 함수를 함수의 인자로도 전달할 수 있다는 뜻이 된다.
이럴때 함수를 받는 함수를 고차함수라 하고, 보내지는 함수를 콜백이라 한다.

여기선 just_caller가 고차함수다.
근데 매번 저런식으로 함수를 정의해서 콜백으로 보내는건 제법 불편한 일이다.
그래서 파이썬에선 콜백용으로 보낼 일회용 함수 생성 기능을 제공하는데, 그게 바로 람다식이다.
람다식은 아래의 문법구조를 가진다.
lambda** 인자1, 인자2, ... : 표현식**
람다식 구문 내의 표현식은 그 자체로 반환값으로 사용될 수 있다.
가령 위의 코드는 이렇게 바꿀 수 있겠다.
파이썬 버전2에서는 람다 내에 print를 쓸 수가 없어서, 문자열을 반환하는 것으로 했다.

아마 print가 연산자라서 그런것같다.
파이썬3에서는 그냥 잘 된다.


여튼, 그렇다.
이렇게 인자를 줄 수도 있다.


조건식을 사용하려면 삼항연산자 등을 쓰면 된다.