私はこのコードを持っています:
for element in json[referenceElement].keys():
そのコードを実行すると、次のエラーが表示されます。
TypeError:ハッシュできない型: 'dict'
そのエラーの原因は何ですか?それを修正するにはどうすればよいですか?
エラーから、referenceElement
は辞書であると推測します(以下の再現を参照)。ディクショナリはハッシュできないため、別のディクショナリのキーとして使用できません(または、それ自体については!)。
>>> d1, d2 = {}, {}
>>> d1[d2] = 1
Traceback (most recent call last):
File "<input>", line 1, in <module>
TypeError: unhashable type: 'dict'
おそらくfor element in referenceElement.keys()
またはfor element in json['referenceElement'].keys()
のいずれかを意味します。 json
とreferenceElement
のタイプとそれらに含まれる内容に関する詳細なコンテキストを使用して、どちらのソリューションも機能しない場合は、より適切に支援することができます。
私のように思えるのは、キーメソッドを呼び出すことで、リストまたはタプルを探しているときに、python辞書オブジェクトに戻ります。したがって、辞書のすべてのキーを取得し、それらをリストに入れてからforループを使用してみてください。