Python Glossary English

все Python 3copyпонятие

copy

модуль

Поверхностное и глубокое копирование объектов: copy, deepcopy и replace.

Синтаксис

import copy

Модуль нужен, когда объект содержит изменяемые вложенные части: copy.copy копирует только верхний уровень, а copy.deepcopy — рекурсивно всё. Для списка и словаря поверхностную копию дают и срез или метод copy. Классическая ошибка — поверхностно скопировать список списков и удивиться, что изменение во вложенном списке видно в обеих копиях.

Примеры

import copy
grid = [[0, 0], [0, 0]]
shallow, deep = copy.copy(grid), copy.deepcopy(grid)
grid[0][0] = 9
print(shallow[0][0], deep[0][0])  # → 9 0

См. также

Частые ошибки

Открыть в полном глоссарииdocs.python.orgСообщить о неточности