-1

複数引数関数でタプルを使用しているときに TypeError が発生します。これが私のコードです:

def add(*args):
    result = 0
    for x in args:
        result = result + x
    return result

items = 5, 7, 4, 12
total = add(items)
print(total)

これはエラーです:

Traceback (most recent call last):
  File "e:\functions.py", line 9, in <module>
    total = add(items)
  File "e:\functions.py", line 4, in add
    result = result + x
TypeError: unsupported operand type(s) for +: 'int' and 'tuple'

変数を使用する代わりに引数を直接入力しても、エラーは発生しません。

total = add(5, 7, 4, 12)

私は Java でコーディングしましたが、Python を使い始めたばかりで、なぜこれが起こっているのかわかりません。

4

3 に答える 3