lambda 함수는 익명 함수로 알려져 있는데 기본적으로 사용 포맷은
lambda [인수1, 인수2, ...] : 인수를 이용한 표현식
의 형태이다. 즉
lambda [parameter_list]: expression
은 아래와 동일하다. 여기서 parameter_list는 생략될수도 있다.
def <lambda>(parameter_list):
temp = expression
return temp
간단한 예제를 보면
>>> f = lambda x=1, y=2: x+y
>>> f()
3
>>> f(3)
5
>>> f(2)
4
>>> f(0)
2
>>> f(10)
12
>>> f(10, 20)
30
>>> f()
3
x=1, y=2는 lambda의 parameter이고 이것을 이용해서 처리할 expression은 x+y이다.
그리고 x=1, y=2는 x, y 매개인자에 아무런 값도 주어지지 않았을 때의 디폴트 값이다.
따라서 f()의 값은 3이 되는 것이다.
만일 매개인자가 하나만 주어지면(f(3)과 같이) 이때 3은 x에 대입이 되어 처리가 된다.
따라서 f(3)은 x=3, y=2가 대입되어서 5가 되고 f(2)는 4가 되는 것이고 f(10)은 12가 되는 것이다.
댓글 없음:
댓글 쓰기