Курс 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. Установка пакетов с помощью pip
  3. Python enumerate() использование
  4. Копирование объектов в Python
  5. Комментарии в Python
  6. Оператор морж в Python 3.8
  7. Удаление и повторная вставка ключа в OrderedDict
  8. Удаление дубликатов из списка с помощью dict.fromkeys
  9. Сортировка слиянием
  10. Использование *args
  11. Переопределение метода divmod
  12. Импорт и использование модулей в Python
  13. JSON-esque в Python
  14. Метод округления чисел
  15. Транспонирование 2D-массива с помощью zip
  16. Скрытие вывода данных
  17. Метод remove() для удаления элемента из списка
  18. Работа со временем в Python
  19. Оператор обр. импликации
  20. Вставка переменных в шаблоны Flask
  21. Удаление URL-адресов в Python
  22. Делегирование в Python
  23. Python Enum Weekday Usage
  24. Получение списка файлов в директории с использованием os
  25. Magic Commands — улучшение работы с Python
  26. Оператор del в Python
  27. Создание новых функций с помощью functools.partial
  28. Возврат нескольких значений
  29. Поиск самого длинного слова в списке с использованием max()
  30. Ограничение итераций в Python
  31. Обратный список чисел
  32. Проверка типа данных
  33. Прокачанный трейсинг ошибок
  34. Отображение HTML кода в Python
  35. ROT13 Шифр Цезаря в Python
  36. Очистка входных данных
  37. Переопределение метода __rshift__
  38. Получение размера объекта с sys.getsizeof()
  39. Оптимизация памяти с __slots__
  40. Создание коллекций из выражения-генератора
  41. Методы HTTP запросов в Flask
  42. Ввод нескольких значений
  43. Генераторы в Python
  44. Отрицательные индексы списков
  45. Заказ карты Тинькофф Black
  46. Создание функций высшего порядка

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