Курс 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. Основы работы со списками
  3. Проверка типа данных
  4. Очистка строки в Python
  5. Работа с аргументами командной строки в Python
  6. Получение текущей директории
  7. Использование подчеркивания в REPL
  8. Библиотека schedule: планировщик задач
  9. Метод сравнения объектов в Python
  10. Перемещение и удаление файлов в Python
  11. Функции в одну строку
  12. Очистка списка от False, None, 0, «»
  13. Чтение бинарного файла в Python.
  14. Работа с CSV в Python
  15. Отображение графиков в Jupyter с Matplotlib
  16. Аннотации типов в Python
  17. Синхронизация потоков с time.sleep()
  18. Обмен значений переменных в Python
  19. Форматирование кода на Python
  20. Метод classmethod
  21. Функция product() в Python
  22. Цепные операции в Python
  23. Кортеж в Python: создание и использование
  24. Декоратор Ajax required
  25. Модуль os: работа с файлами и папками
  26. Работа с файлами в Python
  27. Добавление элемента в список.
  28. Просмотр внешних файлов в %pycat
  29. Шаблоны и наследование в Flask
  30. Создание итератора
  31. Преобразование вложенного списка
  32. Преобразование документов в PDF с помощью Spire.Office
  33. Отладка регулярных выражений в Python
  34. Оператор += для объединения строк
  35. Проверка дублей в списке.
  36. Функциональное программирование в Python
  37. Оператор «not» в Python
  38. Избегайте пустого списка
  39. PEP-401: оператор
  40. Создание таблиц в терминале с PrettyTable
  41. Работа с географическими данными в Python
  42. CSV строка разделение в Python
  43. Работа с датой и временем в Python
  44. Создание треугольника Паскаля
  45. Flask — веб-фреймворк Python
  46. Конвертация коллекций в Python.
  47. Сериализация данных в JSON с помощью json.dumps
  48. Метод __iand__ для пользовательских классов

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