파이썬에서 lambda 함수는 간단하게 정의할 수 있는 익명의 함수입니다. lambda 함수는 함수 선언을 간결하게 하고, 일회성으로 사용되는 함수를 간편하게 작성할 수 있는 방법입니다. 이번 블로그 포스트에서는 lambda 함수의 구조와 활용에 대해 알아보겠습니다.
lambda 함수의 구조
lambda 함수는 다음과 같은 구조를 갖습니다:
lambda arguments: expression
lambda
: lambda 키워드를 사용하여 함수를 정의합니다.arguments
: 함수에 전달되는 입력 인자들입니다.expression
: 함수의 반환 값입니다.
예를 들어, 두 수를 더하는 lambda 함수를 작성해보겠습니다:
addition = lambda x, y: x + y
print(addition(3, 5)) # 출력결과: 8
위의 코드에서 addition
은 lambda 키워드를 사용하여 정의된 함수입니다. 이 함수는 두 개의 인자 x
와 y
를 받아서 더한 결과를 반환합니다.
lambda 함수의 활용
lambda 함수는 주로 다음과 같은 상황에서 활용됩니다:
1. 한 번 사용될 일회성 함수인 경우
lambda 함수는 한 번 사용될 일회성 함수를 쉽게 작성할 수 있습니다. 예를 들어, 리스트의 각 원소에 2를 더하는 경우:
numbers = [1, 2, 3, 4, 5]
result = list(map(lambda x: x + 2, numbers))
print(result) # 출력결과: [3, 4, 5, 6, 7]
위의 코드에서 lambda x: x + 2
는 리스트 원소 하나에 2를 더하는 함수로서, map 함수와 함께 사용되었습니다.
2. 정렬 기준을 주기 위해 함수를 인자로 받는 함수에 사용되는 경우
lambda 함수는 정렬 기준을 주기 위해 함수를 인자로 받는 함수에 사용됩니다. 예를 들어, 리스트의 원소들을 길이에 따라 오름차순으로 정렬하는 경우:
strings = ["apple", "banana", "cherry", "date"]
strings.sort(key=lambda x: len(x))
print(strings) # 출력결과: ['date', 'apple', 'cherry', 'banana']
위의 코드에서 key=lambda x: len(x)
는 각 문자열의 길이를 기준으로 정렬하는 함수로서, sort 함수와 함께 사용되었습니다.
결론
lambda 함수는 파이썬에서 간편하게 일회성 함수를 작성하고 사용할 수 있는 방법입니다. lambda 함수를 적절히 활용하면 코드의 가독성을 높이고 불필요한 함수 선언을 줄일 수 있습니다. 위의 예제 코드를 통해 lambda 함수의 구조와 활용에 대해 이해해보세요.