Pythonのsum()関数は、イテラブルの数値の合計を取得するために使用されます。
Python sum()
Python sum()関数の構文は次のようになります:
sum(iterable[, start])
startはオプションの数値で、デフォルト値は0です。startが指定された場合、startとイテラブル内のすべての数値の合計が返されます。
Python sum()数値のリスト
s = sum([1, 2, 3])
print(s)
s = sum([1, 2, 3], 10)
print(s)
出力:
6
16
なお、sum()メソッドはキーワード引数を受け取らないため、sum([1, 2, 3], start=10)
と書いた場合、TypeError: sum() takes no keyword arguments
という例外が発生します。
Python整数のシーケンスの合計
sumはイテラブルを引数として受け入れるため、数値のタプルやバイト列も渡すことができます。
s = sum(bytes([1, 2]))
print(s)
s = sum(bytearray([1, 2]), 10)
print(s)
# sum of integers in different formats, tuple of numbers
s = sum((1, 0b11, 0o17, 0xFF))
print(s)
s = sum((1, 0b11, 0o17, 0xFF), 0xF)
print(s)
出力:
3
13
274
289
Pythonの浮動小数点数の合計
s = sum([1.5, 2.5, 3])
print(s)
出力:7.0
拡張精度で浮動小数点数の値を追加する場合は、math.fsum()
関数を使用できます。
Pythonの複素数の合計
sum()関数は複素数でも動作します。
s = sum([1 + 2j, 3 + 4j])
print(s)
s = sum([1 + 2j, 3 + 4j], 2 + 2j)
print(s)
s = sum([1 + 2j, 2, 1.5 - 2j])
print(s)
出力:
(4+6j)
(6+8j)
(4.5+0j)
完全なPythonスクリプトとその他のPythonの例は、私たちのGitHubリポジトリから確認できます。
参考:公式ドキュメント
Source:
https://www.digitalocean.com/community/tutorials/python-sum