Python - sum()으로 리스트의 합계 계산

By JS | Last updated: January 01, 2021

sum()은 Iterable인 list, tuple, dictionary의 합을 리턴하는 함수입니다. 숫자만 가능하며, 숫자가 아닌 객체가 있을 때 TypeError가 발생합니다.

  • sum(iterable) : iterable의 합
  • sum(iterable, start) : start + iterable의 합

sum(iterable)

sum(iterable)은 인자로 전달되는 iterable의 합을 리턴합니다.

아래 예제에서 sum(list)는 list의 합을 리턴합니다.

list = [10, 22, 19, 2, 9, 3]
sum_list = sum(list)

print(sum_list)

Output:

65

sum(iterable, start)

sum(iterable)은 인자로 전달되는 iterable의 합과 start를 더한 값을 리턴합니다.

list = [10, 22, 19, 2, 9, 3]
sum_list = sum(list, 1000)

print(sum_list)

Output:

1065

tuple, dictionary에 대한 sum()

tuple 또는 dictionary도 iterable이기 때문에, sum()을 사용할 수 있습니다.

다음은 Tuple에 sum()을 사용한 예제입니다.

tuple = (10, 22, 19, 2, 9, 3)
sum_tuple = sum(tuple)

print(sum_tuple)

Output:

65

다음은 dict에 sum()을 사용한 예제입니다.

dict = {'a': 1, 'b': 2, 'c': 3}
sum_dict = sum(dict.values())
print(sum_dict)

Output:

6

TypeError

sum()으로 전달된 Iterable에 숫자가 아닌 객체가 있을 때 TypeError가 발생합니다.

list = [10, 22, 'a', 2, 9, 3]
sum_list = sum(list)

Output:

Traceback (most recent call last):
  File "/home/mjs/IdeaProjects/python-examples/inttostr.py", line 58, in <module>
    sum_list = sum(list)
TypeError: unsupported operand type(s) for +: 'int' and 'str'

Related Posts

댓글을 보거나 쓰려면 이 버튼을 눌러주세요.
codechachaCopyright ©2019 codechacha