파이썬 람다
람다 함수는 작은 익명 함수입니다.
람다 함수는 여러 인수를 사용할 수 있지만 표현식은 하나만 가질 수 있습니다.
통사론
lambda arguments : expression
표현식이 실행되고 결과가 반환됩니다.
예시
인수 a
에 10을 추가하고 결과를 반환합니다.
x = lambda a : a + 10
print(x(5))
Lambda 함수는 여러 인수를 사용할 수 있습니다.
예시
a
인수 와 인수
를 곱하고 b
결과를 반환합니다.
x = lambda a, b : a * b
print(x(5, 6))
예시
인수 a
,
b
를 요약 c
하고 결과를 반환합니다.
x = lambda a, b, c : a + b + c
print(x(5, 6,
2))
Lambda 함수를 사용하는 이유
람다의 힘은 다른 함수 내에서 익명 함수로 사용할 때 더 잘 나타납니다.
하나의 인수를 취하는 함수 정의가 있고 해당 인수에 알 수 없는 숫자가 곱해집니다.
def myfunc(n):
return lambda a : a * n
그 함수 정의를 사용하여 보내는 숫자를 항상 두 배로 만드는 함수를 만드십시오.
예시
def myfunc(n):
return lambda a : a * n
mydoubler = myfunc(2)
print(mydoubler(11))
또는 동일한 함수 정의를 사용하여 보내는 숫자를 항상 3배로 만드는 함수를 만듭니다.
예시
def myfunc(n):
return lambda a : a * n
mytripler = myfunc(3)
print(mytripler(11))
또는 동일한 함수 정의를 사용하여 동일한 프로그램에서 두 함수를 모두 만듭니다.
예시
def myfunc(n):
return lambda a : a * n
mydoubler = myfunc(2)
mytripler = myfunc(3)
print(mydoubler(11))
print(mytripler(11))
짧은 시간 동안 익명 함수가 필요한 경우 람다 함수를 사용합니다.