본문 바로가기
Software/Python

[파이썬의 기본] 함수에 사용되는 특별한 기능 - 맵 & 필터(map & filter)

by lovey25 2019. 4. 24.
반응형

맵, 필터 함수는 리스트와 같은 반복 구조형을 더 다양하게 사용할 수 있도록 도와주는 파이썬 내장함수입니다.

맵(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) 


결과:

 

맵과 필터의 결과물인 이터러블은 리스트 함수를 통해서 리스트형으로 변환 가능합니다.

 

끝!

반응형

댓글