Junior — Middle
Değiştirilebilir veri tipleri nesneleri, fonksiyona argüman olarak geçirildiğinde nasıl değişir?
sobes.tech yapay zeka
AI'dan gelen yanıt
Python'da değiştirilebilir türdeki nesneler (örneğin, listeler, sözlükler, kümeler) fonksiyona nesneye referansla geçirilir. Bu, fonksiyon içinde nesnenin içeriği değiştirilirse (örneğin, listeye bir öğe eklemek), bu değişikliklerin fonksiyon dışında da görüleceği anlamına gelir.
Örnek:
def add_element(lst):
lst.append(10)
my_list = [1, 2, 3]
add_element(my_list)
print(my_list) # Çıktı: [1, 2, 3, 10]
Ancak, fonksiyon içinde parametreye yeni bir nesne atarsanız, bu dış nesneyi etkilemez:
def replace_list(lst):
lst = [4, 5, 6] # Yeni bir nesne oluşturulur, fonksiyon için yerel
my_list = [1, 2, 3]
replace_list(my_list)
print(my_list) # Çıktı: [1, 2, 3]
Bu nedenle, değiştirilebilir nesneleri fonksiyona geçirirken, içeriğini değiştirebilir ve bu değişiklikler fonksiyon dışında da kalıcı olur.