코딩하는 문과생

[Python] functools의 reduce함수 본문

프로그래밍/Python

[Python] functools의 reduce함수

코딩하는 문과생 2019. 11. 18. 21:54
def reduce(function, iterable, initializer=None):

reduce함수의 매개변수에는 첫번째로는 실행할 함수,

두번째는 실행할 함수에 입력될 값들,

세번째는 초기값이 들어간다. 단, 세번째 값은 선택이다.

 

이름이 없는 함수(익명함수)에 for문을 사용해 여러 값을 입력해야할 때 사용된다.

reduce(lambda x, y: x+y, [1, 2, 3, 4, 5])
# 15 
# ((((1 + 2) +3) +4) +5)


reduce(lambda x, y: x+y, [1, 2, 3, 4, 5], 10)
# 25 
# (((((10 + 1) + 2) + 3) + 4) + 5)

 

위와 아래 모두 값은 결과값을 가진다.

print( reduce(lambda x, y: x+y, [1, 2, 3, 4, 5], 10) )
# 25

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

def sum(a, b):
    return a + b
    
s=10
num=[1, 2, 3, 4, 5]
for i in num:
    s = sum(s, i)
print(s)
#25

'프로그래밍 > Python' 카테고리의 다른 글

[Python] split함수  (0) 2019.11.20
[Python] isdigit(), isnumeric(), isdecimal()  (0) 2019.11.20
[Python] list, set 내 map함수  (0) 2019.11.18
[Python] 순열과 조합  (0) 2019.11.18
[Python] collection 모듈의 Counter 객체  (0) 2019.11.17