목록reduce (2)
차밍이
목차 들어가며 리스트 요소들 전체의 합은 sum으로 구해지는데 리스트 요소들 끼리의 곱은 구해지지가 않는다. 그래서 해당 방법에 대해 알아보자. 총 3가지의 종류가 있다. for문 돌아가며 수행하기 eval과 join 함수를 사용하기 reduce함수 사용하기 for 문 수행하기 def multiplyAll_v1(s:list) -> int: ans = 1 for n in s: ans *= n return ans eval 함수와 join 메소드 사용하기 from functools import reduce def multiplyAll_v2(s:list) -> int: return eval("*".join([str(n) for n in s])) eval 함수에 대해서 잘 모른다면 다음 포스팅을 참고하면 됩니다...
목차 reduce 함수란? reduce 함수는 반복 가능한 객체이다. 각 요소들을 이전 연산 결과들과 누적하여 반환한다. functools 모듈에서 불러와야 한다. from functools import reduce reduce 예제 from functools import reduce dataList = [1, 2, 3, 4, 5] def sum(a, b): return a + b reduce(sum, dataList) >>> 15 reduce 실행 과정 sum(sum(sum(sum(1, 2), 3), 4), 5) => ((((1 + 2) + 3) + 4) +5) => 15 시각적으로 살펴보면 다음과 같다. Reference https://technote.kr/344 https://heytech.tist..