Python Lambda

라무다 함수는 작은 익명 함수입니다.

라무다 함수는 어떤 양의 매개변수를 받을 수 있지만, 하나의 표현식만을 가질 수 있습니다.

문법

lambda arguments : expression

표현식을 실행하고 결과를 반환합니다:

예제

라무다 함수가 있습니다. 매개변수로 전달된 숫자에 10을 더한 후 결과를 출력합니다:

x = 람다 a : a + 10
print(x(5))

실행 예제

lambda 함수는 어떤 수의 매개변수를 받을 수 있습니다:

예제

파라미터 a와 b를 곱한 결과를 출력하는 lambda 함수:

x = lambda a, b : a * b
print(x(5, 6))

실행 예제

예제

파라미터 a, b, c를 더한 결과를 출력하는 lambda 함수:

x = lambda a, b, c : a + b + c
print(x(5, 6, 2))

실행 예제

Lambda 함수를 사용하는 이유는 무엇인가요?

lambda를 다른 함수 내부의 익명 함수로 사용할 때, lambda의 강력한 능력을 더 잘 표현됩니다.

하나의 매개변수를 가진 함수 정의가 있으며, 이 매개변수는未知수로 곱될 예정입니다:

def myfunc(n):
  return lambda a : a * n

항상 보내신 숫자를 두 배로 늘리는 함수를 생성하기 위해 이 함수 정의를 사용합니다:

예제

def myfunc(n):
  return lambda a : a * n
mydoubler = myfunc(2)
print(mydoubler(11))

실행 예제

또는, 항상 보내신 숫자를 세 배로 늘리는 함수를 생성하기 위해 동일한 함수 정의를 사용합니다:

예제

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))

실행 예제

단기간 내에 익명 함수가 필요하다면 lambda 함수를 사용하십시오.