English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Метод copy() возвращает поверхностную копию списка.
СписокМожет быть скопирован и использован=Операторы. Например:
old_list = [1, 2, 3] new_list = old_list
Проблема копирования списка таким образом заключается в том, что если вы измените new_list, old_list также будет изменен.
old_list = [1, 2, 3] new_list = old_list # Добавить элемент в список new_list.append('a') print('Новый список:', new_list ) print('Старый список:', old_list )
При выполнении этого программы, результат вывода будет:
Новый список: [1, 2, 3, 'a'] Старый список: [1, 2, 3, 'a']
Но если вам нужно, чтобы исходный список оставался неизменным при изменении нового списка, вы можете использовать метод copy(). Это называется легкой копией.
Синтаксис метода copy():
new_list = list.copy()
У метода copy() нет параметров.
Функция copy() возвращает список. Она не изменяет исходный список.
# Смешанный список list = ['猫', 0, 6.7] # Копировать список new_list = list.copy() # Добавить элемент в новый список new_list.append('狗') # Вывод новых и старых списков print('Старый список: ', list) print('Новый список: ', new_list)
При выполнении этого программы, результат вывода будет:
Старый список: ['猫', 0, 6.7] Новый список: ['猫', 0, 6.7, '狗']
Вы можете видеть, что даже при изменении нового списка старый список остается неизменным.
Вы также можете использовать срез для достижения аналогичного результата:
# Смешанный список list = ['cat', 0, 6.7] # Копировать список с помощью среза new_list = list[:] # Добавить элемент в новый список new_list.append('dog') # Вывод новых и старых списков print('Старый список: ', list) print('Новый список: ', new_list)
После выполнения, результат вывода:
Старый список: ['cat', 0, 6.7] Новый список: ['cat', 0, 6.7, 'dog']