반응형
맵, 필터 함수는 리스트와 같은 반복 구조형을 더 다양하게 사용할 수 있도록 도와주는 파이썬 내장함수입니다.
맵(map)
맵은 함수와 이터러블(iterable)을 매개변수로 받고 함수에 이터러블내 맴버 각각을 차례대로 적용한 새로운 이터러블을 반환하는 기능을 수행합니다.
예제:
def add_five(x):
return x + 5
nums = [11, 22, 33, 44, 55]
result = list(map(add_five, nums))
print(result)
결과:
맵 함수가 하는 기능은 람다함수를 이용해서 더 간단히 표현할 수도 있습니다.
(람다에 대한 내용은 지난포스팅([파이썬의 기본] 함수에 사용되는 특별한 기능 - 람다(lambda) 함수)에서 확인해주세요.)
nums = [11, 22, 33, 44, 55]
result = list(map(lambda x: x+5, nums))
print(result)
필터(filter)
필터는 조건에 부합하지 않는 요소들을 이터러블에서 제거해주는 함수입니다. 그리고 함수자체는 불린값을 반환합니다.
예제:
nums = [11, 22, 33, 44, 55]
res = list(filter(lambda x: x%2==0, nums))
print(res)
결과:
맵과 필터의 결과물인 이터러블은 리스트 함수를 통해서 리스트형으로 변환 가능합니다.
끝!
반응형
'Software > Python' 카테고리의 다른 글
[PyQt 파이썬 GUI프로그래밍] Layout으로 창크기에 따라 창요소 크기도 같이 조절되도록 하기 (15) | 2019.05.21 |
---|---|
[파이썬의 기본] 예외처리 (try, except, finally, raise) (2) | 2019.04.24 |
[파이썬의 기본] 함수에 사용되는 특별한 기능 - 제너레이터(Generator) (2) | 2019.04.24 |
[파이썬의 기본] 함수에 사용되는 특별한 기능 - 람다(lambda) 함수 (2) | 2019.04.24 |
댓글