Beste svaret
La oss først forstå hva som er hashable og unhasable. Enkelt sagt betegner vi elementene hvis verdier ikke kan endres som hashable og objektene hvis verdier kan endres som uskadelige.
For eksempel i Python kan alle uforanderlige objekter betegnes som hashable mens de er som mutable objekter kan betegnes som uskadelig. La oss ta et eksempel hvor vi kan få en slik feil og hvorfor vi får den.
For eksempel når du bruker en liste som en nøkkel i ordboken Det kan ikke gjøres og vi får en feil TypeError: uskadelig type.
Dette er fordi lister ikke kan hases, og vi prøver å bruke en liste som et hash-argument. Dette betyr at når du prøver å hash et uskadelig objekt, vil det resultere i denne feilen. Den vanlige måten å løse dette problemet på er å kaste en liste til en tuple.
Og ettersom tuplene er uforanderlige og dermed hashable, er det kan fungere.
Svar
dict = {a: 1}
Det viser en uskadelig type feil i python cmd i vinduet.
Hashable betydning i python er hvilken verdi som aldri kan endres. Og uskadelig er motsatt av Hashable. I ordbokverdien kan oppdateringen være når som helst, men hvis pythontolken forstår datatypen. I mitt eksempel dict = {a: 1} (nøkkel = a, verdi = 1) a er en streng datatype, men følg ikke her strengens datatype regel som skrives e omslutter tegn i anførselstegn. Så derfor sa tolk at denne datatypeverdien er uskadelig (kan endres), men datatypen misforstås.