Встречается на собеседованиях • сегодня

Как использовать copy в Python

Модуль copy в Python предоставляет функции для создания копий объектов. Основные функции:

  1. copy.copy() — создаёт поверхностную (shallow) копию объекта
  2. copy.deepcopy() — создаёт глубокую (deep) копию, рекурсивно копируя все вложенные объекты
python
import copy

original_list = [1, [2, 3], 4]
shallow_copy = copy.copy(original_list)
deep_copy = copy.deepcopy(original_list)

original_list[1][0] = 'changed'
print(shallow_copy)  # [1, ['changed', 3], 4] - вложенный список изменился
print(deep_copy)     # [1, [2, 3], 4] - остался неизменным

Разница между ними:

  • Поверхностная копия создаёт новый объект, но не копирует вложенные объекты (они остаются ссылками)
  • Глубокая копия создаёт полностью независимую копию со всеми вложенными объектами

Для простых неизменяемых типов (int, str, tuple) copy() и deepcopy() работают одинаково.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы