Курс 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. Приоритет операций в Python
  2. Объединение словарей в Python
  3. Подсчет количества элементов в списке
  4. Установка и использование Python-dateutil
  5. Именованные срезы в Python
  6. Документация функции help() в Python
  7. Метаклассы в Python
  8. Переменная с нижним подчеркиванием
  9. Определение объема памяти объекта
  10. Работа с CSV файлами
  11. Основы Python за 14 дней
  12. Defaultdict в Python
  13. Генераторы в Python
  14. Дизассемблирование Python кода
  15. Функция print() — вывод информации
  16. Поиск индекса элемента в списке
  17. Работа с каталогами в Python
  18. Оператор == в Python
  19. Оператор space-invader
  20. Операторы Splat и splatty-splat
  21. Удаление ключа из словаря
  22. Преобразование документов в PDF с помощью Spire.Office
  23. Нахождение пересечения множеств
  24. Библиотека Rich: форматирование текста
  25. Генератор списка в Python
  26. Python Метод del.
  27. Избегайте использования goto
  28. Сохранение и загрузка модели в PyTorch
  29. Округление чисел с помощью round
  30. Эффективная конкатенация строк в Python
  31. Оператор Walrus в Python 3.8
  32. Списковое включение в Python
  33. Удаление элементов из списка
  34. Возвращение нескольких значений
  35. Обработка исключений в Python
  36. Сравнение объектов в Python
  37. Тип CodeType в Python.
  38. Сравнение def и lambda функций в Python
  39. Особенности ключей словаря в Python
  40. Работа со списками
  41. Участие в LP стейкинге Waves
  42. Особенности запятых в Python
  43. Форматирование данных с помощью pprint
  44. Управление User-Agent в Python
  45. Модуль inspect
  46. Сериализация объектов в Python
  47. Проверка кортежей.
  48. Выход из профиля в Django

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