エラーが指定されたコードでこのエラーが発生します:
print str(i+1)+". Horse number "+str(winners[i])+" - "+str(odds(winners[i]))
TypeError: 'list' object is not callable
いずれかのオブジェクトの印刷が原因である可能性があります。ありがとうございました!
エラーが指定されたコードでこのエラーが発生します:
print str(i+1)+". Horse number "+str(winners[i])+" - "+str(odds(winners[i]))
TypeError: 'list' object is not callable
いずれかのオブジェクトの印刷が原因である可能性があります。ありがとうございました!
これは2つの問題のうちの1つになります。コードを投稿していないので、ここで推測する必要があります。
リストであるローカル変数str
があります。コード内でその変数の名前を変更すると、組み込みstr
関数がマスクされます。
リストであるローカル変数odds
があり、それを関数として使用しようとしています。おそらく、あなたもという名前の関数を持っていodds
ます。その場合は、変数の名前を変更してください。
あなたはおそらくすでに自分でそれを理解しています。str
またはodds
、おそらく後者はリストであり()
、 の代わりに ,を使用して誤ってインデックス付けしようとしています[]
。代わりに次のことを試してください。
print str(i+1)+". Horse number "+str(winners[i])+" - "+str(odds[winners[i]])
または、さらに良いことに、Python バージョン >= 2.6:
print '{}. Horse number {} - {}'.format(i+1,winners[i],odds[winners[i]])
詳細については、Python Docを参照してください。