Overføring av variabler ved referanse i Python
I Python overføres variabler som inneholder komplekse objekter ved referanse. Dette betyr at alle endringer gjort i en variabel vil vises i den andre. Og selv om denne typen verditilordning øker risikoen for feil, sparer den betydelig på operativsystemets minneressurser.
La oss si at vi har to lister:
lst1 = [1, 2, 3, 4, 5]
lst2 = lst1
Siden variabelen lst2 ble tildelt
verdien lst1, er det nå én liste
lagret i datamaskinens arbeidsminne,
som to variabler refererer til samtidig.
La oss endre det første elementet i lst2
og skrive ut den første listen til konsollen:
lst2[0] = '!'
print(lst1) # vil skrive ut ['!', 2, 3, 4, 5]
Hva blir resultatet av å kjøre følgende kode:
lst1 = [1, 2, 3, 4, 5]
lst2 = lst1
lst2[0] = '!'
print(lst1)
Hva blir resultatet av å kjøre følgende kode:
lst1 = [1, 2, 3, 4, 5]
lst2 = lst1
lst2[0] = '!'
print(lst2)
Hva blir resultatet av å kjøre følgende kode:
lst1 = ['a', 'b', 'c', 'd']
lst2 = lst1
lst3 = 'e'
lst2[2] = lst3
print(lst2)