Метод 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, 'a') Новый список: (1, 2, 3, 'a')
Однако, если вам нужно, чтобы исходный список оставался неизменным при изменении нового списка, вы можете использовать этот copy()
метод.
Связанное руководство: Python Shallow Copy Vs Deep Copy
Синтаксис copy()
метода:
new_list = list.copy ()
параметры 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)
Вывод
Старый список: ('кошка', 0, 6.7) Новый список: ('кошка', 0, 6.7, 'собака')