Методът 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, 'куче')