Курс Python → Копирование в Python

Копирование в Python — это процесс создания копии объекта, чтобы иметь возможность работать с ним независимо от оригинала. Для этого используется оператор = или метод copy(). При копировании объекта создается новый объект, который имеет те же значения, что и оригинал, но при этом изменения в одном объекте не влияют на другой.

Однако стоит помнить, что копирование может быть как поверхностным, так и глубоким. При поверхностном копировании создается новый объект, но его вложенные объекты остаются ссылками на объекты оригинала. При глубоком копировании все объекты внутри копируемого объекта также рекурсивно копируются.

Пример поверхностного копирования:


import copy

original_list = [1, 2, [3, 4]]
copied_list = copy.copy(original_list)

original_list[2][0] = 5

print(original_list)  # [1, 2, [5, 4]]
print(copied_list)    # [1, 2, [5, 4]]

Пример глубокого копирования:


import copy

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

original_list[2][0] = 5

print(original_list)      # [1, 2, [5, 4]]
print(deep_copied_list)   # [1, 2, [3, 4]]

Таким образом, копирование в Python позволяет создавать независимые копии объектов, что может быть полезно при работе с данными, чтобы избежать неожиданных изменений и ошибок.

Твои коллеги будут рады, поделись в

Автор урока

Дмитрий Комаровский
Дмитрий Комаровский

Автоматизация процессов
в КраснодарБанки.ру

Другие уроки курса "Python"

  1. Расчет времени выполнения
  2. Нахождение самого длинного слова в списке с помощью max
  3. Проверка списка: any() и all()
  4. Использование *args
  5. Преобразование многоуровневого словаря
  6. Работа с набором данных CIFAR10 в PyTorch
  7. Хранение переменных в Python.
  8. Пространство имен в Python
  9. Pillow: работа с изображениями
  10. Работа с f-строками 2.0
  11. Проверка на истинность объектов в Python
  12. Объединение объектов в Python
  13. Константы в модуле cmath
  14. Класс UserDict: дополнительная функциональность
  15. Оператор «not» в Python
  16. Установка Home Assistant
  17. Методы в Python
  18. Конкатенация строк с join() в Python
  19. Многострочные строки в Python
  20. Измерение потребления памяти при сортировке
  21. Преобразование списка в словарь через генератор
  22. Операции со строками в Python
  23. Декоратор проверки активности
  24. globals и locals
  25. Нахождение пересечения множеств
  26. Метод rrshift для пользовательских объектов
  27. Работа с прокси в Python
  28. Работа с SQLite в Python
  29. Регулярные выражения: метод match
  30. Декораторы в Python
  31. Управление пакетами с pip
  32. Работа с очередями в Python
  33. Группировка элементов в словарь
  34. Встраивание HTML в Jupyter Notebook
  35. Измерение времени выполнения кода
  36. Сортировка данных в Python
  37. Сортировка с помощью параметра key
  38. Библиотека Chartify: руководство
  39. Объединение списков в строку
  40. Функция zip() в Python
  41. Преобразование типов данных в set comprehension
  42. Пересечение списков с использованием множеств
  43. Структура данных deque в Python
  44. Работа с функцией next() в Python
  45. Путь к интерпретатору Python
  46. Отправка POST-запроса в REST API

Marketello читают маркетологи из крутых компаний