선릉역 1번 출구

람다 함수 본문

Language/Python

람다 함수

choideu 2022. 9. 7. 00:30

함수를 이름없이 간단하게 선언하기 위해 도입한 개념

lambda 매개변수: 매개변수를 이용한 리턴 값

의 형식을 가짐

a = lambda x, y : x + y
a(1,2) //3

이렇게 사용함

 

람다 + map or filter 함수

map(함수, 리스트)// list의 요소를 하나씩 꺼내어 함수에 넣고 리턴된 값으로 새로운 리스트를 만듦
filter(함수, 리스트)// list의 요소를 함수에 넣고 return 값이 true인 것만 리스트로 만듦

*람다 함수와 map, filter 함수를 자주 같이 사용함

 

num_list = [1, 2, 3, 4, 5]
list1 = map(lambda x : x**2, num_list)
list2 = filter(lambda x: x % 2 == 0 , num_list)

보통 이런 형식으로 사용함

print()를 사용해 list1, list2를 출력하면 0x~형식으로 출력되는데 이는 map, filter함수의 결과물이 제너레이터이기 때문

*제너레이터: 내부의 데이터가 실제 메모리 용량을 차지하지 않고, 호출하기 전까지는 가상의 값만 가지고 있는 형태로 list()함수를 사용해 리스트 자료형으로 변환하여 사용함

'Language > Python' 카테고리의 다른 글

배경화면 변경 프로그램 만들기  (0) 2023.03.14
얕은 복사와 깊은 복사  (0) 2021.10.22
Comments