3.13 reduce 함수
파이썬 리스트의 더욱 흥미로운 기능은 리스트의 모든 항목을 한 번에 처리할 수 있는 함수를 여러분이 직접 작성하여 사용할 수 있다는 것이다. 바로 map이나 filter와 같은 리스트 메서드가 이 능력을 부여한다. map 메서드는 주어진 리스트의 전체 항목을 변환한 신규 리스트를 생성한다. filter 메서드는 구체적인 조건(예 양수 추출)에 만족하는 항목들로 구성된 신규 리스트를 생성한다.
반면 리스트 함축(comprehension)(3.15절에서 소개)은 보통 map과 filter보다 더 나은 일을 한다.
한편 functools 패키지의 여러 함수를 사용하면 리스트를 다양한 방식으로 처리할 수 있다. functools 패키지를 사용하려면 다음과 같이 탑재해야 한다.
import functools
그러고 나서 functools.reduce 함수를 사용하여 리스트 전체 항목을 처리할 함수를 적용하면 된다.
functools.reduce(함수, 리스트)