상세 컨텐츠

본문 제목

21. 파이썬 Lambda

프로그래밍 언어/Python(파이썬)

by 알파고제로 2023. 10. 13. 17:13

본문

■ Lambda 함수란?

  • 단일문으로 표현되는 익명함수
  • Lambda, map, reduce는 간단한 코드로 다양한 기능을 제공
  • 그러나 코드의 직관성이 떨어져서 lambda나 reduce는 pyton3에서 사용을 권장하지 않음
  • 파이썬 3부터는 권장하지는 않으나 Legacy library나 다양한 머신러닝 코드에서 여전히 많이 쓰임
  • 작은 함수를 정의하고 이들을 호출해서 얻은 모든 결과값을 저장해야 하는 경우에 유용
  • 콜백 함수를 정의하는 GUI에서 람다를 사용할 수 있다.
lambda 매개변수 : 리턴할 수식
# 일반적인 함수
def myfunc(x, y):
	return x + y

result = myfunc(10, 11)
print(result)

# 위 함수를 lambda로 처리
result2 = lambda x, y : x + y
print(result2(10, 12))

# map(함수, 리스트) 의 사용 - 1
a = [1, 2, 3, 4, 5]
f = lambda x : x**2

list(map(f, a))
##map의 이용 2
x = [1, 3, 5, 7, 9]
y = [2, 4, 6, 8, 10]

f1 = lambda x1, y1 : x1 + y1
print(list(map(f1, x, y)))

## 조건식 이용한 lambda 함수
k = list(range(1, 11))

f2 = lambda x : x ** 2
print(list(map(f2, k)))

f3 = lambda x : x ** 2 if not x%2 else x
print(list(map(f3, k)))

관련글 더보기

댓글 영역