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[:]. Этот способ также создает поверхностную копию.