Python'da Referans ile Değişken Aktarımı
Python'da karmaşık nesneler içeren değişkenler referans ile aktarılır. Bu şu anlama gelir: bir değişkende yapılan tüm değişiklikler ikincisinde de görünecektir. Ve bu tür bir değer atama işleminde hata oluşma riski artmasına rağmen, işletim sistemi sistem belleği kaynakları önemli ölçüde tasarruf edilir.
İki listemiz olduğunu varsayalım:
lst1 = [1, 2, 3, 4, 5]
lst2 = lst1
lst2 değişkenine
lst1 değeri atandığı için,
şimdi bilgisayarın RAM'inde
aynı anda iki değişken tarafından
referans verilen bir liste saklanır.
Hadi lst2'nin ilk elemanını değiştirelim
ve ilk listeyi konsola yazdıralım:
lst2[0] = '!'
print(lst1) # ['!', 2, 3, 4, 5] yazdıracak
Aşağıdaki kodun çalıştırılmasının sonucu ne olacak:
lst1 = [1, 2, 3, 4, 5]
lst2 = lst1
lst2[0] = '!'
print(lst1)
Aşağıdaki kodun çalıştırılmasının sonucu ne olacak:
lst1 = [1, 2, 3, 4, 5]
lst2 = lst1
lst2[0] = '!'
print(lst2)
Aşağıdaki kodun çalıştırılmasının sonucu ne olacak:
lst1 = ['a', 'b', 'c', 'd']
lst2 = lst1
lst3 = 'e'
lst2[2] = lst3
print(lst2)