reduce() 함수는 파이썬 내장 함수 중 하나로, 리스트나 튜플 등의 iterable 객체에 차례로 함수를 적용하여 하나의 결과값을 얻는 함수입니다. reduce() 함수는 functools 모듈에 포함되어 있습니다.
1. 사용법
reduce() 함수의 기본 문법은 다음과 같습니다.
reduce(function, sequence[, initial])
여기서 function은 iterable 객체에 차례로 적용할 함수이며, sequence는 iterable 객체입니다. initial은 선택적으로 지정할 수 있는 초깃값입니다.
reduce() 함수는 다음과 같은 동작을 수행합니다.
- sequence의 첫 번째 원소와 initial 값을 가지고 function 함수를 호출합니다.
- function 함수의 반환값과 sequence의 다음 원소를 가지고 다시 function 함수를 호출합니다.
- 이 과정을 sequence의 모든 원소에 대해 반복합니다.
이렇게 reduce() 함수는 iterable 객체에 순차적으로 함수를 적용하여 하나의 결과값을 반환합니다. 다음은 reduce() 함수를 사용한 예제 코드입니다.
from functools import reduce
# 리스트의 모든 원소를 곱하는 함수
def multiply(a, b):
return a * b
# reduce() 함수를 사용하여 리스트의 모든 원소를 곱한 결과값을 반환
lst = [1, 2, 3, 4]
result = reduce(multiply, lst)
print(result) # 출력결과: 24
위 코드에서 reduce() 함수에 multiply 함수와 lst 리스트를 인자로 전달하여 호출합니다. multiply 함수는 두 개의 인자를 받아 곱한 결과를 반환하는 함수이며, reduce() 함수는 lst 리스트의 모든 원소에 대해 multiply 함수를 순차적으로 적용하여 최종 결과값 24를 반환합니다.
reduce() 함수는 iterable 객체에 대해 누적된 값을 계산하는 데 유용합니다. 그러나 파이썬 3부터는 reduce() 함수가 내장 함수에서 제거되었으므로, reduce() 함수를 사용하기 위해서는 functools 모듈을 import해야 합니다.
'라이브러리' 카테고리의 다른 글
[Python] backoff 재시도 모듈 사용법 (0) | 2023.04.04 |
---|---|
[Python] filter() 함수 사용법 (0) | 2023.03.20 |
[파이썬] Counter 모듈 사용법 (0) | 2023.03.20 |
[파이썬] Static method, Class method 에 대해서 (0) | 2023.03.20 |
[파이썬] zip() 함수로 데이터 묶기 (0) | 2023.03.20 |