코딩배우기

파이썬 목록 합계 (sum)

탁이 2022. 7. 11. 05:57

파이썬 목록이 숫자형 배열인 경우 합계를 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'