Python의 map() filter() reduce() 사용 방법 정리
가끔씩 Python의 map()
, filter()
, reduce()
에 대해 헷갈리는 것들이 있어서 정리해 본다.
map(function, iterable, …)
- Reference: Python 문서 참조
iterable
에 있는 모든 요소에 function
을 적용하여 그 결과를 반환한다. function
은 여러 인자를 받을 수 있어야 하고, 모든 iterable의 아이템에 동시에 적용되도록 해야 한다.
>>> l1 = [1, 2, 3, 4]
>>> map(lambda x: x * 2, l1)
<map object at 0x1006d1040>
map()을 수행한 결과는 map object로 반환되므로, 이를 list나 tuple로 바꾸는 작업이 필요하다.
>>> list(map(lambda x: x * 2, l1))
[2, 4, 6, 8]
함수 정의를 보면, iterable
뒤에 ...
이 붙는 것을 볼 수 있다. 여러 iterable을 붙이면 어떻게 될까?