Копія списку Python ()

Метод 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')

Цікаві статті...