Курс 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. Функции all и any в Python
  2. Поиск с помощью регулярных выражений
  3. Синхронизация потоков с time.sleep()
  4. Назначение максимального и минимального значения переменной в Python.
  5. Работа с файлами в Python
  6. Проверка окончания строки с помощью str.endswith()
  7. Различия символов в Python
  8. Оператор деления для класса Rational
  9. Ошибка NotImplemented в Python
  10. Поиск подстроки в строке
  11. Инверсия списка и строки
  12. Метод Self в Python
  13. Удаление файлов с shutil.os.remove()
  14. Виртуальные среды в Python
  15. Объединение Python и Shell
  16. Поиск самого частого элемента
  17. Замеры производительности в Python
  18. Работа с кортежами в Python
  19. Перезапуск ячейки в Jupyter Notebook с dostoevsky
  20. Сокращение ссылок с pyshorteners
  21. Получение частей дроби
  22. Замена переменных в Python
  23. Возврат нескольких значений из функции
  24. Фильтрация списка от «ложных» значений
  25. Работа с срезами в Numpy
  26. Распаковка аргументов в Python
  27. Метод rrshift для пользовательских объектов
  28. Обработка исключений с блоком else
  29. Преобразование строк в числа в Python
  30. Numpy: объединение массивов
  31. Структурирование именованных констант
  32. Установка и использование TensorFlow
  33. Копирование словарей и списков в Python
  34. Метод __irshift__ для Python
  35. Кортеж в Python: создание, доступ, изменение
  36. Bootle — простой веб-фреймворк
  37. Работа с OpenCV
  38. Улучшенные подсказки для импорта в Python 3.12
  39. Итераторы с потерямиZIP
  40. Настройка нарезки списков
  41. Проверка однородности элементов списка
  42. Удаление дубликатов из списка
  43. Работа с файлами и директориями в Python.
  44. Подсказки типов в Python
  45. Обратный список чисел
  46. Установка Python3.7 и PIP

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