範囲で合計関数を使用するとエラーが発生する理由を理解しようとしています。
コードは次のとおりです。
data1 = range(0, 1000, 3)
data2 = range(0, 1000, 5)
data3 = list(set(data1 + data2)) # makes new list without duplicates
total = sum(data3) # calculate sum of data3 list's elements
print total
そしてここにエラーがあります:
line 8, in <module> total2 = sum(data3)
TypeError: 'int' object is not callable
私はエラーについてこの説明を見つけました:
Pythonでは、「呼び出し可能」は通常関数です。このメッセージは、数値(> "int")を関数( "callable")であるかのように扱っていることを意味します。そのため、Pythonは何をすべきかわからないため、停止します。
また、sum()はリストで使用できることを読んだので、ここで何が問題になっているのでしょうか。
IDLEモジュールで試してみたところ、問題なく動作しました。ただし、Pythonインタープリターでは機能しません。それがどのようになり得るかについてのアイデアはありますか?