リストのリストがあるところでこのコードを実行しようとしています。内部リストに追加する必要がありますが、エラーが発生します
TypeError: 'list' object is not callable.
誰も私がここで間違っていることを教えてもらえますか?.
def createlists():
global maxchar
global minchar
global worddict
global wordlists
for i in range(minchar, maxchar + 1):
wordlists.insert(i, list())
#add data to list now
for words in worddict.keys():
print words
print wordlists(len(words)) # <--- Error here.
(wordlists(len(words))).append(words) # <-- Error here too
print "adding Word " + words + " at " + str(wordlists(len(words)))
print wordlists(5)
リストの要素にアクセスするには、括弧([]
)ではなく、角括弧(()
)を使用する必要があります。
の代わりに:
print wordlists(len(words))
あなたが使用する必要があります:
print worldlists[len(words)]
そして代わりに:
(wordlists(len(words))).append(words)
あなたが使用する必要があります:
worldlists[len(words)].append(words)
wordlistsは関数ではなく、リストです。ブラケット添え字が必要です
print wordlists[len(words)]
リストの要素を取得するには、list(i)
の代わりにlist[i]
を使用する必要があります。
リストとして分類された別の変数と同じ名前の関数を呼び出したときにもエラーが発生しました。
命名を整理すると、エラーは解決されました。
wordlists[len(words)]
を試してください。 ()
は関数呼び出しです。 wordlists(..)
を実行すると、pythonは、wordlists
と呼ばれるlist
という関数を呼び出していると考えます。したがって、エラー。
ここでwordlists
を呼び出そうとしています:
print wordlists(len(words)) <--- Error here.
試してください:
print wordlists[len(words)]
私も同じエラーを受け取りましたが、解決しました、仕事で多くのリストを使用していたので、カーネルを再起動しました(つまり、JupyterやGoogle Colabなどのノートブックを使用している場合は、すべてのセルを再起動してもう一度実行できます、これを行うことで問題が解決され、エラーが消えます。
ありがとう。
プログラムを保存したファイル名を確認してください。ファイル名がwordlists
の場合、エラーが発生します。ファイル名は、プログラムで使用するメソッド{関数}と同じであってはなりません。