TypeError:不可用types:“字典”,当字典用作另一个字典的关键字
我有这段代码:
for element in json[referenceElement].keys():
当我运行该代码时,我得到这个错误:
TypeError:不可能的types:'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()
或者for element in json['referenceElement'].keys()
for element in referenceElement.keys()
for element in json['referenceElement'].keys()
。 更多关于json
和referenceElement
是什么types以及它们包含什么types的上下文,如果两个解决scheme都json
,我们将能够更好地帮助您。
在我看来,通过调用keys方法,当它正在查找一个列表或一个元组时,它将返回python一个字典对象。 因此,请尝试将字典中的所有键都放入列表中,然后使用for循环。