5 つの名前を変数に保存しようとしていますが、エラーが発生します
TypeError: 'builtin_function_or_method' object does not support item assignment
他の方法をいくつか試しましたが、うまくいきませんでした。問題がどこにあるのかわかりません。
k = 0
while k < 5:
sum = input("name: ")
ord[k] = sum
k += 1
5 つの名前を変数に保存しようとしていますが、エラーが発生します
TypeError: 'builtin_function_or_method' object does not support item assignment
他の方法をいくつか試しましたが、うまくいきませんでした。問題がどこにあるのかわかりません。
k = 0
while k < 5:
sum = input("name: ")
ord[k] = sum
k += 1
5 つの名前を変数に保存しようとしています
最高の説明ではありません。より良い: 「5 つの文字列を含む辞書を作成しようとしています。」
しかし、私はエラーが発生します
ord
組み込み関数です。以前にこの名前に割り当てていない限り、辞書ではありません (ord = {}
コードにはありません)。Eclipse 用のPyDevプラグインなどの特定の IDE では、このようなエラーについて警告が表示されます。
別の名前を選択して初期化します。
d = {}
k = 0
while k < 5:
s = input("name: ")
d[k] = s
k += 1
(sum
も組み込みです。)
python2.x を使用している場合は、raw_input()
代わりにinput()
.
ちなみに、このコードは次のように記述できます。
d = {}
for k in range(5):
d[k] = input("name: ")
またはさらに短い:
d = { k:input('name: ') for k in range(5) }
インデックスが 0..4 であるため、単純な を使用しないのはなぜlist
ですか?
d = [ input('name: ') for _ in range(5) ]