Метод copy () повертає неглибоку копію списку.
Список можна скопіювати за допомогою =
оператора. Наприклад,
old_list = (1, 2, 3) new_list = old_list
Проблема копіювання списків таким чином полягає в тому, що якщо ви змінюєте new_list, модифікується і old_list. Це тому, що новий список посилається або вказує на той самий об’єкт old_list.
old_list = (1, 2, 3) new_list = old_list # add an element to list new_list.append('a') print('New List:', new_list) print('Old List:', old_list)
Вихідні дані
Старий список: (1, 2, 3, "а") Новий список: (1, 2, 3, "а")
Однак якщо вам потрібно змінити оригінальний список при зміні нового списку, ви можете скористатися copy()
методом.
Пов’язаний навчальний посібник: Python Shallow Copy Vs Deep Copy
Синтаксис copy()
методу:
new_list = list.copy ()
copy () параметри
copy()
Метод не приймає ніяких параметрів.
Повернене значення з копії ()
copy()
Метод повертає новий список. Це не змінює оригінальний список.
Приклад 1: Копіювання списку
# mixed list my_list = ('cat', 0, 6.7) # copying a list new_list = my_list.copy() print('Copied List:', new_list)
Вихідні дані
Скопійований список: ('cat', 0, 6.7)
Якщо ви зміните new_list у наведеному вище прикладі, my_list не буде змінений.
Приклад 2: Копіювання списку за допомогою синтаксису нарізки
# shallow copy using the slicing syntax # mixed list list = ('cat', 0, 6.7) # copying a list using slicing new_list = list(:) # Adding an element to the new list new_list.append('dog') # Printing new and old list print('Old List:', list) print('New List:', new_list)
Вихідні дані
Старий список: ('cat', 0, 6.7) Новий список: ('cat', 0, 6.7, 'dog')