파이썬 람다 함수: 익명 함수 실전 가이드
파이썬 람다 함수: 익명 함수 실전 가이드
파이썬의 익명 람다 함수가 코드를 어떻게 단순화하는지 알아보세요. 목적, 문법, 실전 활용 예제를 명확히 설명합니다.
영상: 파이썬 람다
파이썬에서 람다 함수란?
파이썬에서 익명 함수는 이름 없이 정의됩니다. 일반 함수는 def 키워드를 쓰지만, 익명 함수는 lambda로 선언합니다. 그래서 람다 함수라 부릅니다.
파이썬에서 람다 함수 사용법
람다 함수는 간결한 문법을 가집니다:
람다 함수 문법
lambda arguments: expression
임의 개수 인자 허용하지만 표현식은 하나만 가능. 표현식 평가 결과가 반환됨. 함수 객체를 반환하므로 함수가 필요한 곳이면 어디서든 사용 가능.
람다 함수 예제
입력값을 두 배로 만드는 간단한 람다:
# 기본 람다 함수 시연
double = lambda x: x * 2
print(double(5))
출력
10
lambda x: x * 2가 이름 없는 함수 생성. 인자 x가 표현식 x * 2에 전달되어 평가되고 반환. 결과 함수 객체가 변수 double에 할당되어 일반 함수처럼 호출 가능. 동등한 def 버전:
def double(x):
return x * 2
파이썬에서 람다 함수 쓸 때
람다 함수는 일회용 빠른 함수 필요 시 빛을 발함, 특히 고차 함수의 인자로. filter(), map() 같은 내장 함수와 자주 짝지어 간결한 변환 수행.
filter() 예제
filter() 함수는 이터러블 각 항목에 술어 적용, 조건 만족 항목만 반환. 다음 예제는 리스트에서 짝수만 유지:
# 리스트에서 짝수만 필터링
my_list = [1, 5, 4, 6, 8, 11, 3, 12]
new_list = list(filter(lambda x: (x % 2 == 0), my_list))
print(new_list)
출력
[4, 6, 8, 12]
map() 예제
map() 함수는 각 요소에 변환 적용해 새 이터러블 생성. 여기서 리스트 각 요소를 두 배로:
# map()으로 각 항목 두 배
my_list = [1, 5, 4, 6, 8, 11, 3, 12]
new_list = list(map(lambda x: x * 2, my_list))
print(new_list)
출력
[2, 10, 8, 12, 16, 22, 6, 24]