본문 바로가기

프로그래밍/python

13. lambda, map

13.1 lambda

lambda(람다)는 함수를 생성할 때 사용하는 예약어로 def와 동일한 역할을 한다.

보통 함수를 한 줄로 간결하게 만들 때 사용한다. def를 사용해야 할 정도로 복잡하지 않거나 def를 사용할 수 없는 곳에 주로 쓰인다.

-점프 투 파이썬 166페이지-

lambda 매개변수1, 매개변수2, ... : 매개변수를 사용한 표현식

add = lambda a, b: a+b
result = add(3,4)
print(result)           #7

13.2 map

map은 연산과 값을 서로 적용해주는 역할을 한다.

아래는 교수님께서 예시로 들어주셨던 코드이다.

nums = [1.5, 2.3, 3.4, 4.6, 5.0]
rnd_nums = map(round, nums)
print(list(rnd_nums)

[2, 2, 3, 5, 5]

round는 반올림을 시켜주는 연산이고, 거기에 리스트 형태의 숫자를 집어넣어 계산된 rnd_nums를 다시 리스트로 만들어 프린트한 코드이다.

lambda를 이용한 예시를 하나 더 적어두자면

nums = [1,2,3,4,5]
sqrd_nums = map(lambda x : x**2, nums)
print(list(sqrd_nums))

[1, 4, 9, 16, 25]

'프로그래밍 > python' 카테고리의 다른 글

14. Numpy Arrays  (0) 2021.12.30
+ 파이썬 이야기  (0) 2021.12.30
12. Enumerate, Zip  (0) 2021.12.30
11. Ternary conditional operator, underscore, context manager, with  (0) 2021.12.30
10. tuples, sets  (0) 2021.12.30