Är listan hashbar Python?
Är listan hashbar Python?

Video: Är listan hashbar Python?

Video: Är listan hashbar Python?
Video: Python 5 алгоритмов для новичка! 2024, Maj
Anonim

Alla Pythons oföränderliga inbyggda objekt är hashbart , medan inga föränderliga behållare (som t.ex listor eller ordböcker) är. Objekt som är instanser av användardefinierade klasser är hashbart som standard; de jämför alla ojämlika, och deras hashvärde är deras id().

Bara så, är tuplar hashbara i Python?

10.1 Tuples är oföränderliga Värdena som lagras i en tupel kan vara vilken typ som helst och de indexeras med heltal. Den viktiga skillnaden är att tupler är oföränderliga. Tuples är också jämförbara och hashbart så vi kan sortera listor över dem och använda dem tupler som nyckelvärden i Pytonorm ordböcker.

vad betyder det att något är hashbart? Ett objekt är sagt att vara hashbart om det har ett hashvärde som förblir detsamma under dess livstid. Objekt som är instanser av användardefinierade klasser är hasbar som standard; de jämför alla ojämlika (förutom med sig själva), och deras hashvärde är härledd från theirid().

Med tanke på detta, vad betyder Unhashable Python?

Skrivfel: unhashable typ: 'lista' vanligtvis innebär att att du försöker använda en lista som ett hash-argument. Detta innebär att att när du försöker hasha en unhashable objekt kommer det att resultera i ett fel. Till exempel. Det vanliga sättet att lösa det här problemet är att skapa en lista till en tupel.

Är listor oföränderliga i Python?

Allt i Pytonorm är ett föremål. Och vad alla nykomlingar till Pytonorm bör snabbt lära sig är att alla föremålsin Pytonorm kan antingen vara föränderlig eller oföränderlig . Objekt av inbyggda typer som (int, float, bool, str, tuple, unicode) är oföränderlig . Objekt av inbyggda typer som ( lista , set, dict) är föränderliga.

Rekommenderad: