Sobes.tech
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:

  1. Yeni bir değerle yeni bir nesne oluşturulur (eğer tür değişmiyorsa, örneğin int için).
  2. x değişkeni, bu yeni nesneye referans vermeye başlar.
  3. 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.