10.7 맵, 필터, 리듀스
리스트에 있는 숫자들을 모두 더하고 싶다면 다음과 같이 루프를 사용할 것이다.
def add_all(t):
total = 0
for x in t:
total += x
return total
total은 0으로 초기화되었다. 루프를 돌 때마다 x는 리스트의 원소 하나를 가져온다. += 연산자는 변수를 업데이트하는 축약 문법이다. 더하기 할당문,
total += x
는 다음 코드와 같다.
total = total + x
루프가 실행됨에 따라 total에는 원소들의 합계가 누적된다. 즉, 이와 같은 방식으로 사용하는 변수를 누산기(accumulator)라고 부른다.