[解決済み] TypeError: 'dict_keys' オブジェクトはインデックス作成をサポートしていません。
2022-03-04 07:13:59
質問
def shuffle(self, x, random=None, int=int):
"""x, random=random.random -> shuffle list x in place; return None.
Optional arg random is a 0-argument function returning a random
float in [0.0, 1.0); by default, the standard random.random.
"""
randbelow = self._randbelow
for i in reversed(range(1, len(x))):
# pick an element in x[:i+1] with which to exchange x[i]
j = randbelow(i+1) if random is None else int(random() * (i+1))
x[i], x[j] = x[j], x[i]
を実行すると
shuffle
関数は、次のようなエラーを発生させます。
TypeError: 'dict_keys' object does not support indexing
解決方法は?
明らかに
d.keys()
を、あなたの
shuffle
関数を使用します。 おそらく、これは python2.x で書かれたものでしょう (
d.keys()
はリストを返します)。 python3.xでは
d.keys()
が返されます。
dict_keys
オブジェクトのような挙動をします。
set
よりも
list
. そのため、インデックスされることはありません。
解決策は
list(d.keys())
(または単に
list(d)
から
shuffle
.
関連
-
ピロウズ画像色処理の具体的な活用方法
-
opencvとpillowを用いた顔認証システム(デモあり)
-
風力制御におけるKS原理を深く理解するためのpythonアルゴリズム
-
PythonでECDSAを実装する方法 知っていますか?
-
[解決済み】お使いのCPUは、このTensorFlowバイナリが使用するようにコンパイルされていない命令をサポートしています。AVX AVX2
-
[解決済み】OSError: [WinError 193] %1 は有効な Win32 アプリケーションではありません。
-
[解決済み】 NameError: グローバル名 'xrange' は Python 3 で定義されていません。
-
[解決済み】IndexError: invalid index to scalar variableを修正する方法
-
[解決済み] TypeError: Python3でファイルへの書き込み時に'str'ではなくbytesのようなオブジェクトが要求される
-
[解決済み】Ellipsisオブジェクトは何をするのですか?
最新
-
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 実装 サイバーパンク風ボタン
おすすめ
-
風力制御におけるKS原理を深く理解するためのpythonアルゴリズム
-
PythonでECDSAを実装する方法 知っていますか?
-
[解決済み】TypeError: 系列を <class 'float'> に変換することができません。
-
[解決済み】syntaxError: 'continue' がループ内で適切に使用されていない
-
[解決済み】 AttributeError("'str' object has no attribute 'read'")
-
[解決済み】Python Error: "ValueError: need more than 1 value to unpack" (バリューエラー:解凍に1つ以上の値が必要です
-
[解決済み】Python: OverflowError: 数学の範囲エラー
-
[解決済み] matplotlibのラインスタイルの一覧はありますか?
-
[解決済み] 辞書からヒストグラムをプロットする
-
[解決済み] 取得する TypeError: 'dict_values' object does not support indexing when using python 3.2.3 [duplicate] タイプエラー: 'dict_values' オブジェクトはインデックス作成をサポートしていません。