반응형
TypeError : unhashable type : 'dict', dict가 다른 dict의 키로 사용될 때
이 질문에 이미 답변이 있습니다.
이 코드가 있습니다.
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
포함 내용에 대한 더 많은 컨텍스트를 통해 두 솔루션 모두 작동하지 않는 경우 더 나은 도움을 드릴 수 있습니다.
나에게 보이는 것은 keys 메서드를 호출하여 목록이나 튜플을 찾을 때 파이썬으로 사전 객체를 반환한다는 것입니다. 따라서 사전의 모든 키를 가져 와서 목록에 넣은 다음 for 루프를 사용하십시오.
반응형
'program story' 카테고리의 다른 글
LTS (장기 지원)와 Node.js의 안정적인 버전의 차이점은 무엇입니까? (0) | 2020.11.25 |
---|---|
C ++ HTML 템플릿 프레임 워크, 템플릿 라이브러리, HTML 생성기 라이브러리 (0) | 2020.11.25 |
Git의 팩 파일은 스냅 샷이 아닌 델타입니까? (0) | 2020.11.25 |
Oracle 클라이언트 ORA-12541 : TNS : 리스너 없음 (0) | 2020.11.25 |
git stash는 언제 사용해야합니까? (0) | 2020.11.25 |