형식 오류:해시되지 않는 형식:’목록’

이 게시물에서 우리는TypeError: unhashable type: 'list'에 대해 볼 것입니다.

dictionary또는setlist를 키로 넣으려고 할 때 이 오류가 발생합니다.TypeError: unhashable type은 해시 할 수없는 객체를 해시하려고 할 때 일반적으로 발생합니다.

예제를 통해 살펴 보겠습니다.:

파이썬

1
2
3
4

이 문제를 해결하는 방법은 다음과 같습니다.)

출력:

목록을 튜플로 캐스팅하여 이 문제를 해결할 수 있습니다. 튜플은 불변의 객체이기 때문에,그것은 사전에 키로 사용할 수 있습니다.

파이썬

1
2
3
4

이 경우 두 개의 튜플을 사용하여 두 개의 튜플을 만들 수 있습니다.)

산출:

{1: ‘하나’,(2,10):’두’}

당신이 볼 수 있듯이,우리는 튜플()기능을 사용하면,프로그램이 잘 작동.
의 세트와 다른 예를 보자.

파이썬

1
2
3
4

1 세트={,}
인쇄(세트 1)

출력:

목록을 튜플로 캐스팅하여 이 문제를 해결할 수 있습니다. tuple은 불변의 객체이므로 사전에서 키로 사용할 수 있습니다.

파이썬

1
2
3
4

튜플을 사용하는 방법은 다음과 같습니다.)

산출:

{(1, 2), (3, 4)}

당신이 볼 수 있듯이,일단 우리가tuple()기능을 사용하면 프로그램이 정상적으로 작동했습니다.

해시 가능 객체란?

해싱은 데이터를 고정 크기 지능 값으로 인코딩하는 방법입니다. 그것은 일반적으로 고성능 자료 구조를 디자인하기 위하여 이용됩니다.

해쉬체에서 Python

int float 소수 bool 문자열 튜플 복잡한 범위 frozenset 바이트

비 편집기입체에서 Python

list 설정 dict 찬가지로 해당 사용자 지정 클래스

는 모든 TypeError:unhashable 형식:목록”.



+