GeeksforGeeks

Alla variabler i Python innehåller en instans av ett objekt. Det finns två typer av objekt i Python, nämligen Mutable och Immutable objects. När ett objekt instansieras tilldelas det ett unikt objekt-id. Objektets typ definieras vid körningen och kan inte ändras i efterhand. Däremot kan dess tillstånd ändras om det är ett mutabelt objekt.

För att sammanfatta skillnaden kan mutabla objekt ändra sitt tillstånd eller innehåll och oföränderliga objekt kan inte ändra sitt tillstånd eller innehåll.

Slutsats

  1. Mutabla och oföränderliga objekt hanteras på olika sätt i python. Immutabla objekt är snabbare att komma åt och är dyra att ändra eftersom det innebär att en kopia måste skapas.
    Varvid mutabla objekt är lätta att ändra.
  2. Användning av mutabla objekt rekommenderas när det finns ett behov av att ändra objektets storlek eller innehåll.
  3. Undantag : Det finns dock ett undantag även i oföränderlighet. Vi vet att tupel i Python är oföränderlig. Men tupeln består av en sekvens av namn med oföränderliga bindningar till objekt.
    Konsultera en tupel
     tup = (, 'myname') 

    Tupeln består av en sträng och en lista. Strängar är oföränderliga så vi kan inte ändra dess värde. Men innehållet i listan kan ändras. Tupeln i sig är inte föränderlig men innehåller objekt som är föränderliga.

Som tumregel kan man säga att generellt primitive-liknande typer förmodligen är oföränderliga och att skräddarsydda container-liknande typer oftast är föränderliga.

Attention geek! Stärk din grund med Python Programming Foundation Course och lär dig grunderna.

För att börja med dina intervjuförberedelser Förbättra dina begrepp om datastrukturer med Python DS-kursen.

Practice Tags :

Lämna ett svar

Din e-postadress kommer inte publiceras.