私はPython 3を使用していますが、リストにキャストしているにもかかわらず、'dict_keys'オブジェクトを取得するとリストにキャストされてもインデックス作成はサポートされません
これは、関数の呼び出しです:
path = euleriancycle(edges)
そして、私はキー方式を使用しているところ、これは次のとおりです。私はリストするタイプキャストせずにそれを実行しようとしたと、このエラーを得た
def euleriancycle(e):
currentnode = list[e.keys()[0]]
path = [currentnode]
を。このサイトと同様のクエリについて噂を振りまいた後、私は提案されたソリューションとリストにタイプキャストしたが役に立たなかった。私は同じエラーがあります。
これはエラートラックである:
---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
<ipython-input-56-356b905111a9> in <module>()
45 edges[int(edge[0])] = [int(edge[1])]
46
---> 47 path = euleriancycle(edges)
48 print(path)
<ipython-input-56-356b905111a9> in euleriancycle(e)
1 def euleriancycle(e):
----> 2 currentnode = list[e.keys()[0]]
3 path = [currentnode]
4
5 while true:
TypeError: 'dict_keys' object does not support indexing
'リスト(e.keys())[0]'作品が、 '次の(ITER(E))'、おそらくあなたは* *に 'e.keysを()'キャストなかった – vaultah
優れています索引付けの前にリストします。あなたは 'e.keys()[0]'の* result *をリストにキャストしようとしました(ただし、索引構文が壊れていても 'list [...]'ではなく 'list(...)')。おそらく 'list(e.keys())[0]'(括弧に注意してください!)を使うことを意図していましたが、これは 'list(e)[0]'の綴りの冗長な方法です。 –