Курс 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. Метод get для словарей
  2. Извлечение новостей с newspaper3k
  3. JSON в Python: модуль, dump, dumps, load
  4. Считывание бинарного файла в Python
  5. Декораторы в Python
  6. Обработка исключений в Python
  7. Замена подстроки
  8. Частичное применение функций в Python
  9. Методы работы со списками
  10. Поиск наиболее частого элемента списке
  11. Работа со строками
  12. Python reversed() функция
  13. Искажение имен в Python
  14. Codecademy в Telegram
  15. Метод join() для объединения элементов в строку.
  16. Документация функции help() в Python
  17. Преобразование вложенного списка
  18. Поиск email
  19. Библиотека sh: удобные команды терминала
  20. Работа с Colorama
  21. Оптимизация сравнения в Python
  22. Установка и использование TensorFlow
  23. Функция reduce() в Python
  24. Создание GUI на Tkinter
  25. Работа с асинхронными задачами в Python
  26. Работа с многоуровневыми словарями в Python
  27. Лимиты на ресурсы Python
  28. Работа с контекстным менеджером Pool
  29. Генераторы в Python
  30. Циклы в Python
  31. Асинхронное программирование с asyncio
  32. Преобразование кортежа в словарь.
  33. Определение функций с необязательными аргументами
  34. Оператор «not» в Python
  35. Преобразование символов с помощью map
  36. Дизассемблирование Python кода
  37. Enum в Python
  38. Flask: создание веб-приложений
  39. Управление памятью в Python
  40. Метод clear для коллекций
  41. Определение относительного пути
  42. Удаление элемента по индексу в Python
  43. Измерение времени выполнения кода
  44. Форматирование строк в Python
  45. Переменная Шредингера

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