Middle+
Python'da copy modülü hakkında bana bilgi ver. copy ile deepcopy arasındaki fark nedir?
sobes.tech yapay zeka
AI'dan gelen yanıt
Python'da copy modülü, nesnelerin kopyalarını oluşturmak için fonksiyonlar sağlar. Ana fonksiyonlar:
copy.copy(obj)— yüzeysel kopya.copy.deepcopy(obj)— derin kopya.
copy ve deepcopy arasındaki fark:
- Yüzeysel kopya, yeni bir nesne oluşturur, ancak iç içe geçmiş nesneler kopyalanmaz, sadece orijinaldeki nesnelere referans edilir.
- Derin kopya, tüm iç içe nesneleri özyinelemeli olarak kopyalar ve tamamen bağımsız bir kopya oluşturur.
Örnek:
import copy
orijinal = [1, [2, 3]]
shallow = copy.copy(orijinal)
deep = copy.deepcopy(orijinal)
orijinal[1][0] = 'değişti'
print(shallow) # [1, ['değişti', 3]] — iç içe liste değişti
print(deep) # [1, [2, 3]] — derin kopya değişmedi