Чтобы скопировать элементы из одного списка в другой в Python, доступно несколько методов.

Содержание

1. С помощью функции copy()

Метод copy() — это самый простой способ копирования элементов из одного списка в другой в Python. Он создает неглубокую копию списка.

Примечание. Этот метод копирует только сам список, а не объекты, на которые он ссылается. Если исходный список содержит объекты и один из объектов изменен, изменение будет отражено в обоих списках.

original_cities = ["New York", "Los Angeles", "Chicago"]
itinerary_cities = original_cities.copy()
print(itinerary_cities)

Выход:

['New York', 'Los Angeles', 'Chicago']

После реализации кода в редакторе Pycharm снимок экрана указан ниже.

С помощью функции copy()

2. С помощью нарезки списка

Нарезка списков в Python также может использоваться для копирования списков. Разрезая весь список, мы создаем новый список. Как и метод copy(), срез списка создает неглубокую копию.

presidents = ["Washington", "Lincoln", "Jefferson"]
backup_presidents = presidents[:]
print(backup_presidents)

Выход:

['Washington', 'Lincoln', 'Jefferson']

Ниже приведен скриншот после реализации кода в редакторе Pycharm.

С помощью нарезки списка

3. С помощью конструктора list()

Другой способ копирования списка — использование встроенной функции list(), которая создает новый список на основе элементов существующего. Этот метод также создает неглубокую копию исходного списка.

fast_food_chains = ["McDonald's", "Burger King", "Taco Bell"]
study_list = list(fast_food_chains)
print(study_list)

Выход:

["McDonald's", 'Burger King', 'Taco Bell']

После выполнения кода в Pycharm результат можно увидеть на снимке экрана ниже.

С помощью конструктора list()

4. С помощью метода copy.copy()

В Python есть модуль копирования, который предоставляет функцию copy(). Этот метод особенно полезен при работе со сложными структурами данных. copy.copy() создает неглубокую копию списка.

import copy
nba_teams = ["Lakers", "Bulls", "Celtics"]
analysis_teams = copy.copy(nba_teams)
print(analysis_teams)

Выход:

['Lakers', 'Bulls', 'Celtics']

После реализации кода в редакторе Pycharm снимок экрана указан ниже.

С помощью метода copy.copy()

5. С помощью метода copy.deepcopy()

Метод deepcopy() из модуля копирования создает глубокую копию списка, то есть он также копирует внутренние объекты.

Изменения объектов в исходном списке не повлияют на скопированный список.

import copy
states_cities = [["California", ["Los Angeles", "San Francisco"]], ["Texas", ["Houston", "Dallas"]]]
copied_states_cities = copy.deepcopy(states_cities)
print(copied_states_cities)

Выход:

[['California', ['Los Angeles', 'San Francisco']], ['Texas', ['Houston', 'Dallas']]]

Ниже приведен скриншот после реализации кода в редакторе Pycharm.

С помощью метода copy.deepcopy()

6. С помощью оператора *

Оператор распаковки * можно использовать для копирования списков. Этот метод аналогичен нарезке списка и полезен в тех случаях, когда нам нужно распаковать элементы списка.

Этот подход также создает неглубокую копию списка.

us_holidays = ["Independence Day", "Thanksgiving", "Christmas"]
calendar_holidays = [*us_holidays]
print(calendar_holidays)

Выход:

['Independence Day', 'Thanksgiving', 'Christmas']

После выполнения кода в Pycharm результат можно увидеть на снимке экрана ниже.

С помощью оператора *

Добавить комментарий