[python] 함수의 람다 표현식

Python에서는 람다 표현식을 사용하여 간단한 익명 함수를 만들 수 있습니다. 람다 표현식은 함수를 정의하는 일반적인 방법보다 간결하고 직관적입니다. 이러한 특성 때문에 람다 표현식은 함수형 프로그래밍 스타일에서 주로 사용됩니다.

람다 표현식의 구조

람다 표현식은 다음과 같은 구조를 갖습니다:

lambda arguments: expression

이때, lambda는 람다 표현식임을 나타내는 예약어이고, arguments는 함수의 인자를 나타냅니다. expression은 함수의 입력값을 이용하여 계산된 결과를 나타냅니다. 람다 표현식은 이름이 없는 익명 함수로 정의되며, 주로 한 줄로 표현됩니다.

람다 표현식의 활용

람다 표현식은 간단한 계산이나 조작을 위해 사용됩니다. 예를 들어, map(), filter(), sorted() 함수와 함께 자주 사용됩니다.

map() 함수와 람다 표현식

# 각 원소를 제곱하는 람다 함수를 사용하여 리스트 각 원소 제곱하기
numbers = [1, 2, 3, 4, 5]
squared_numbers = list(map(lambda x: x**2, numbers))
print(squared_numbers)  # 출력: [1, 4, 9, 16, 25]

filter() 함수와 람다 표현식

# 짝수인 원소만 필터링하는 람다 함수를 사용하여 리스트 필터링
numbers = [1, 2, 3, 4, 5]
even_numbers = list(filter(lambda x: x % 2 == 0, numbers))
print(even_numbers)  # 출력: [2, 4]

sorted() 함수와 람다 표현식

# 문자열의 길이에 따라 정렬하는 람다 함수를 사용하여 리스트 정렬
fruits = ["apple", "banana", "cherry", "date"]
sorted_fruits = sorted(fruits, key=lambda x: len(x))
print(sorted_fruits)  # 출력: ['date', 'apple', 'banana', 'cherry']

결론

람다 표현식을 사용하면 간단한 함수를 쉽게 정의할 수 있고, 함수형 프로그래밍 스타일을 적용할 때 유용합니다. 하지만 복잡한 기능이 필요한 경우에는 일반적인 함수를 사용하는 것이 더 바람직할 수 있습니다.

이처럼 람다 표현식은 Python에서 함수형 프로그래밍을 지원하는 강력한 도구입니다. 함께 활용하면 코드를 간결하게 작성할 수 있고, 함수형 프로그래밍의 장점을 최대한 활용할 수 있습니다.