Wat is de betekenis van ' onhashbaar type ' fout in Python?


Beste antwoord

Laten we eerst begrijpen wat hashable en onhasbaar is. In eenvoudige bewoordingen noemen we de items waarvan de waarden niet kunnen worden gewijzigd als hashable en de objecten waarvan de waarden kunnen worden gewijzigd als niet-hashable.

In Python kunnen bijvoorbeeld alle onveranderlijke objecten worden aangeduid als hashable terwijl ze veranderlijke objecten zijn. kan worden omschreven als onhashbaar. Laten we een voorbeeld nemen waar we een dergelijke fout kunnen krijgen en waarom we deze krijgen.

Bijvoorbeeld wanneer u een lijst als sleutel in het woordenboek gebruikt. Het kan niet worden gedaan en we krijgen een foutmelding TypeError: unhashable type.

Dit komt omdat lijsten “niet kunnen worden gehasht en we proberen een lijst te gebruiken als een hash-argument. betekent dat wanneer u een niet-hashbaar object probeert te hashen, dit zal resulteren in deze fout. De standaardmanier om dit probleem op te lossen is door een lijst naar een tuple te casten.

En aangezien tupels onveranderlijk en dus hashbaar zijn, kan werken.

Antwoord

dict = {a: 1}

Zijn show unhashable type error in python cmd on window.

Hashbare betekenis in python is welke waarde nooit veranderbaar is. En unhashable is het tegenovergestelde van Hashable. In Dictionary kan de waarde op elk moment worden bijgewerkt, maar als de Python-interpreter het datatype begrijpt. In mijn voorbeeld dict = {a: 1} (key = a, value = 1) a is een string datatype, maar hier is niet de string datatype regel die writ is e tekens tussen aanhalingstekens plaatsen. Dus daarom zei de interpreter dat deze datatype-waarde niet kan worden gehashbaar (veranderlijk) maar datatype verkeerd wordt begrepen.

Geef een reactie

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *