Копиране на списък на 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)

Изход

 Копиран списък: ('котка', 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)

Изход

 Стар списък: ('котка', 0, 6.7) Нов списък: ('котка', 0, 6.7, 'куче')

Интересни статии...