[解決済み] dict_keys' オブジェクトを取得すると、リストへのキャストにもかかわらずインデックスがサポートされない
2022-02-16 03:15:23
質問
Python 3 を使っていますが、リストにキャストしているにもかかわらず、プログラムを実行することができないようです。
これは関数を呼び出しているところです。
path = euleriancycle(edges)
そして、ここでkeysメソッドを使っています。
def euleriancycle(e):
currentnode = list[e.keys()[0]]
path = [currentnode]
listにタイプキャストせずに実行しようとしたら、このようなエラーが発生しました。このサイトや類似のクエリについて調べた後、提案された解決策に従ってlistにタイプキャストしてみましたが、無駄でした。同じエラーが出ました。
これがエラーの軌跡です。
---------------------------------------------------------------------------
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
解決方法は?
その
dict_keys
オブジェクトは、セットと同様、インデックスを作成することはできません。
この代わりに
list[e.keys()[0]]
次に近いのは、これでしょう。
list(e)[0]
Python は dict からどのキーが返されるかを保証しませんので、自分で順序付けをしたいかもしれません。
関連
-
Python関数の高度な応用を解説
-
PicgoのイメージベッドツールをPythonで実装する
-
Pythonによるjieba分割ライブラリ
-
Python入門 openを使ったファイルの読み書きの方法
-
任意波形を生成してtxtで保存するためのPython実装
-
[解決済み】socket.error: [Errno 48] アドレスはすでに使用中です。
-
[解決済み】SyntaxError: デフォルト以外の引数がデフォルトの引数に続く
-
[解決済み】「OverflowError: Python int too large to convert to C long" on windows but not mac
-
[解決済み] TypeError: int() の引数は、文字列、バイトのようなオブジェクト、または数値でなければならず、'list' ではありません。
-
[解決済み] TypeError: 'dict_keys' オブジェクトはインデックス作成をサポートしていません。
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
pythonサイクルタスクスケジューリングツール スケジュール詳解
-
Python入門 openを使ったファイルの読み書きの方法
-
PythonによるExcelファイルの一括操作の説明
-
Python 入出力と高次代入の基礎知識
-
[解決済み] 'DataFrame' オブジェクトに 'sort' 属性がない
-
[解決済み】Pythonでgoogle APIのJSONコードを読み込むとエラーになる件
-
[解決済み] 'int'オブジェクトに'__getitem__'属性がない。
-
[解決済み】Python Error: "ValueError: need more than 1 value to unpack" (バリューエラー:解凍に1つ以上の値が必要です
-
[解決済み] TypeError: 'DataFrame' オブジェクトは呼び出し可能ではない
-
[解決済み】ValueError: pickleプロトコルがサポートされていません。3、python2 pickleはpython3 pickleでダンプしたファイルを読み込むことができない?