Python/Python Programming

[Python] reduce 함수

Pydole 2019. 10. 24. 22:42

functools.reduce(function,  iterable, initializer) : 왼쪽에서 오른쪽으로 반복을 감소시키면서 함수 연산

 

왼쪽에서 오른쪽으로 순회를 하게 되고, x는 왼쪽, y는 오른쪽에 할당이 된다.

 

 

* python3에서는 functools 모듈을 사용해야 한다.

 


 

reduce를 이용한 모슨 숫자 요소들 더하기

 

from functools import reduce

reduce(lambda x, y: x + y, [2, 4, 6, 8, 10, 12, 14])

------------------------------------------------------

56

 

 

 

reduce를 이용한 모슨 숫자 요소들 더하기. (initializer - 초기값 100 고정)

 

from functools import reduce

reduce(lambda x, y: x + y, [2, 4, 6, 8, 10, 12, 14], 100)

---------------------------------------------------------

156

 

 

 

 

reduce를 이용한 모든 문자열 더하기

 

from functools import reduce

reduce(lambda x, y: x + y, ['2', '4', '6', '8', '10', '12', '14'])

--------------------------------------------------------------------

'2468101214'

 

 

 

reduce를 이용한 모든 문자열 더하기.  (initializer - 초기값 'add : ' 고정)

 

from functools import reduce

reduce(lambda x, y: x + y, ['2', '4', '6', '8', '10', '12', '14'], 'add : ')

-----------------------------------------------------------------------------

'add : 2468101214'