Middle
Python'da bir değişkenin değeri bir birim artırıldığında bellekte ne olur?
sobes.tech yapay zeka
AI'dan gelen yanıt
Python'da değişkenler, değerlerin kendisi değil, bellekteki nesnelere referanslardır. Bir değişkenin değerini bir artırdığınızda, örneğin x += 1, şu olur:
- Yeni bir değerle yeni bir nesne oluşturulur (eğer tür değişmiyorsa, örneğin int için).
xdeğişkeni, bu yeni nesneye referans vermeye başlar.- Eski nesne, ona referanslar olduğu sürece bellekte kalır; referans kalmadığında, çöp toplayıcı belleği serbest bırakır.
Örnek:
x = 5
print(id(x)) # 5 sayısına sahip nesnenin adresi
x += 1
print(id(x)) # 6 sayısına sahip nesnenin adresi — öncekiyle farklı
Bu şekilde, değişkenin değeri değiştirildiğinde yeni bir nesne oluşturulur ve değişken ona yönlendirilir. Bu, Python'daki tam sayıların değiştirilemez nesneler olmasından kaynaklanır.