Python

[파이썬] 람다표현식

bornsoon 2024. 12. 2. 15:58
  • 익명함수를 만들 때
  • 매개변수로 함수를 전달할 경우
  • 사용이 끝나면 메모리(Heap)에서 제거된다
  • map, filter, reduce 함수를 이용하여 간단하게 리스트 요소들을 조작 가능
  • reduce를 제외한 map이나 filter는 리스트 표현식으로 사용 가능
plus= lambda a,b: a+b
print(plus(1, 2))



def calc(a, b, fn):
    fn(a/b)
calc(1, 2, lambda a: print(a))



def calc(a, b, fn):
    fn(a/b)
calc(1, 2, lambda a: print(a))
calc(1, 2, lambda a: print('{:10.2f}'.format(a)))


# map 과 lambda
####################################################################
lst = list(map(lambda x: x**2, a))
print(lst)

lst = list(map(lambda x, y: x + y, a, a))
print(lst)


# filter 와 lambda
####################################################################
lst = list(filter(lambda x: x > 4, a))
print(lst)


# reduce 와 lambda
####################################################################
from functools import reduce

a = [1, 2, 3, 4, 5]
lst = reduce(lambda x, y: x + y, a)
print(lst)
728x90