a = [1, 2]
b = a.copy()
print(b)
Программа выведет: [1, 2]
b = a.copy()
создает поверхностную копию списка a
. Это означает, что b
будет новым списком с теми же элементами, что и в a
. Изменения в a
не повлияют на b
, и наоборот, пока элементы являются неизменяемыми типами (как int в данном случае).
Данный код демонстрирует создание копии списка в Python. Разберем каждую строку:
a = [1, 2]
: Создается список с именем a
, содержащий два элемента: 1 и 2.
b = a.copy()
: Создается новая переменная b
и ей присваивается поверхностная копия списка a
. Метод copy()
возвращает новый объект списка с теми же элементами. Важно отметить, что если бы список a
содержал изменяемые объекты (например, другие списки или словари), то b
содержал бы ссылки на эти же объекты, а не их копии. В данном случае, элементы списка a
- числа, которые являются неизменяемыми, поэтому копирование происходит корректно.
print(b)
: Выводит содержимое списка b
в консоль.
Таким образом, переменная b
будет содержать копию списка a
, и вывод будет идентичен содержимому a
.
[1, 2]
Метод copy()
создает поверхностную копию списка. Если список содержит изменяемые объекты (например, другие списки или словари), то изменения в этих объектах будут видны и в исходном, и в скопированном списке. Для создания глубокой копии списка (где все вложенные объекты также копируются) необходимо использовать функцию deepcopy
из модуля copy
.
Альтернативой a.copy()
является создание копии списка с помощью среза: b = a[:]
. Этот способ также создает поверхностную копию.