Документация по Python

Копирование данных

В: Документация по Python

Выполнение мелкой копии

Мелкая копия - это копия коллекции без выполнения копирования ее элементов.

 >>> import copy
>>> c = [[1,2]]
>>> d = copy.copy(c)
>>> c is d
False
>>> c[0] is d[0]
True 

Выполнение глубокой копии

Если у вас есть вложенные списки, желательно также клонировать вложенные списки. Это действие называется глубоким копированием.

 >>> import copy
>>> c = [[1,2]]
>>> d = copy.deepcopy(c)
>>> c is d
False
>>> c[0] is d[0]
False 

Выполнение мелкой копии списка

Вы можете создавать мелкие копии списков, используя срезы.

 >>> l1 = [1,2,3]
>>> l2 = l1[:]     # Perform the shallow copy.
>>> l2
[1,2,3]
>>> l1 is l2
False 

Скопировать словарь

Словарь объект имеет метод copy.Он выполняет неглубокую копию словаря.

 >>> d1 = {1:[]}
>>> d2 = d1.copy()
>>> d1 is d2
False
>>> d1[1] is d2[1]
True 

Скопировать набор

Наборы также copy метод. Вы можете использовать этот метод для выполнения поверхностного копирования.

>>> s1 = {()}
>>> s2 = s1.copy()
>>> s1 is s2
False
>>> s2.add(3)
>>> s1
{[]}
>>> s2
{3,[]}
Еще от кодкамп
Замечательно! Вы успешно подписались.
Добро пожаловать обратно! Вы успешно вошли
Вы успешно подписались на кодкамп.
Срок действия вашей ссылки истек.
Ура! Проверьте свою электронную почту на наличие волшебной ссылки для входа.
Успех! Ваша платежная информация обновлена.
Ваша платежная информация не была обновлена.