[Python] reduce
reduce
형태: reduce(function, iterable[, initializer]
-
reduce
의 argument 에 해당하는function
은 인수를 2개 받아야한다. -
initializer
는Iterable Data
의 첫번째 요소보다 먼저function
에 할당된다. (옵션) -
from functools import reduce
필요 (내장함수가 아니다.)
Practice
- reduce 를 이용한 총합구하기
from functools import reduce
data = [i for i in range(1, 10+1)]
data_sum = reduce(lambda x,y : x+y, data)
print(data_sum)
>>> 55
- reduce 를 이용한 총합구하기 (Initial Value 활용)
from functools import reduce
data = [i for i in range(1, 10+1)]
data_sum = reduce(lambda x,y : x+y, data, 10) # Initial Value 추가
print(data_sum) # 10 + (1+2+...+10)
>>> 65
- reduce 를 이용한 최댓값 구하기
from functools import reduce
data = [77, 19, 122, 999, 333]
data_max = reduce(lambda x,y : x if x > y else y, data)
print(data_max)
>>> 999
- reduce 를 이용한 최댓값 구하기 (Initial Value 활용)
from functools import reduce
data = [77, 19, 122, 999, 333]
data_max = reduce(lambda x,y : x if x > y else y, data, 1111) # Initial Value 추가
print(data_max) # 1111 부터 하나씩 큰 값을 비교해나간다.
>>> 1111
Leave a comment