In dit bericht zullen we ongeveer TypeError: unhashable type: 'list'
zien.
u krijgt deze fout wanneer u probeert list
als sleutel in dictionary
of set
te zetten omdat list Een Niet-uitwisbaar object is.TypeError: unhashable type
wordt over het algemeen verhoogd wanneer u een object probeert te hashen dat niet te verwijderen is.
laten we dit eens bekijken met behulp van voorbeeld:
Python
1
2
3
4
|
dict1 ={ 1:’one’: ’twee’}
print(dict1)
|
Output:
U kunt dit probleem oplossen door het gieten van de lijst te tupel. Aangezien tuple onveranderlijk object is, kan het worden gebruikt als sleutel in woordenboek.
Python
1
2
3
4
|
dict1 ={ 1:’one’ tupel():’twee’}
print(dict1)
|
Uitgang:
Zoals je kunt zien, zodra wij gebruiken tupel() functie, programma werkte prima.
laten we een ander voorbeeld met set bekijken.
Python
1
2
3
4
|
set1={,}
print(set1)
|
Output:
U kunt dit probleem oplossen door het gieten van de lijst te tupel. Omdat tuple
onveranderlijk object is, kan het als sleutel in woordenboek worden gebruikt.
Python
1
2
3
4
|
set1={tupel(),tupel()}
print(set1)
|
Uitgang:
Zoals u kunt zien, zodra wij gebruiken tuple()
functie, programma werkte prima.
Wat zijn Hashable objects?
Hashing is een methode voor het coderen van gegevens in vaste int-waarde. Het wordt over het algemeen gebruikt om hoog presterende gegevensstructuur te ontwerpen.
Hashable object in Python
int | float | decimaal | bool | string | tupel | complexe | assortiment | frozenset | bytes |
Niet Hashable object in Python
lijst | set | dict | bytearray | aangepaste klassen |
Dat is al over TypeError: unhashable type: ‘list’.