파이썬 목록이 숫자형 배열인 경우 합계를 sum이라는 함수로 계산할 수 있습니다.
프로그램
a = [5, 3, 6]
b = sum(a)
print(b)
출력
14
실제로 5+3+6=14이며 sum(a)는 a의 합계입니다.
예(총합)
1에서 100까지의 합계를 찾는 프로그램은 다음과 같습니다.
프로그램
a = range(1, 101)
b = sum(a)
print(b)
출력
5050
range의 제 1 인수가 최소치, 제 2 인수로부터 1을 뺀 수가 최대치가 되는 수열이 range(1, 101)입니다.
예(평균)
합계를 개수로 나누면 평균이 됩니다.
프로그램
x = range(1, 101)
s = sum(x)
c = len(x)
a = s / c
print(a)
출력
50.5
s에 합계, c에 개수를 넣고 있습니다. range의 요소 수는 len로 구합니다.
집합과 튜플
sum은 집합이나 튜플에서도 사용할 수 있습니다.
집합
x = {1, 2, 3}
s = sum(x)
print(s)
출력
6
튜플
x = (1, 2, 3)
s = sum(x)
print(s)
출력
6
메모
당연한 것이지만 sum에 문자열을 넣으면 오류가 발생합니다.
프로그램
x = ['원숭이', '토끼']
s = sum(x)
print(s)
출력
Traceback (most recent call last):
File "list_sum_2.py", line 2, in <module>
s = sum(x)
TypeError: unsupported operand type(s) for +: 'int' and 'str'