Курс 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. Преобразование данных в Python
  3. Подписка на каналы разработчиков
  4. Работа с комплексными числами в Python
  5. Работа с GitHub в Telegram
  6. Показ всплывающих окон Tkinter
  7. TON Smart Challenge #2: участие и подготовка
  8. Ветвление выражения в Python
  9. Получение атрибутов и методов класса
  10. Удаление и повторная вставка ключа в OrderedDict
  11. Функции с дополнением
  12. Работа с модулем bisect
  13. Оптимизация памяти с slots
  14. Поиск анаграмм с Counter
  15. Создание объекта timedelta
  16. Big O оптимизация
  17. Python Calendar Usage
  18. Методы сравнения множеств
  19. Подсказки типов в Python
  20. Модуль pprint: улучшение вывода данных
  21. Работа с enumerate()
  22. Таймер обратного отсчета
  23. Оператор continue в Python
  24. Применение функции map() в Python
  25. ChainMap.new_child() — добавление нового словаря
  26. Печать календаря в Python
  27. Обработка ошибок в Python
  28. Progress с библиотекой tqdm
  29. Метод join для объединения строк
  30. Декораторы в Python
  31. Оператор обр. импликации
  32. Декораторы в Python
  33. %pinfo: получение информации об объекте
  34. Генератор надежных паролей
  35. Numpy: разбиение массивов
  36. Автоматизация действий с Pyautogui
  37. Структуры данных в Python
  38. Официальный канал Python в Telegram
  39. Операторы объединения в Python 3.9
  40. Функции в Python: создание и вызов
  41. Работа с argparse
  42. Повторение элементов в Python
  43. Работа с словарями в Python
  44. Функция __init__ в Python

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