Middle+
48
Python-дағы copy модулі туралы айтыңыз. copy және deepcopy арасындағы айырмашылық неде?
Сұралған компаниялар
AI-дан жауап
sobes.tech AI
Модуль copy в Python предоставляет функции для создания копий объектов. Основные функции:
copy.copy(obj)— поверхностное копирование (shallow copy).copy.deepcopy(obj)— глубокое копирование (deep copy).
Разница между copy и deepcopy:
- Поверхностное копирование создает новый объект, но вложенные объекты внутри него не копируются, а просто ссылаются на те же объекты, что и в оригинале.
- Глубокое копирование рекурсивно копирует все вложенные объекты, создавая полностью независимую копию.
Пример:
import copy
original = [1, [2, 3]]
shallow = copy.copy(original)
deep = copy.deepcopy(original)
original[1][0] = 'changed'
print(shallow) # [1, ['changed', 3]] — вложенный список изменился
print(deep) # [1, [2, 3]] — глубокая копия не изменилась