Копирование списков

Редакция Без Сменки
Честно. Понятно. С душой.

Часто возникает такая проблема, что в задаче нужно записать промежуточные результат, но изначальный список изменять нельзя. В такой момент мы вспоминаем о сегодняшней теме.

Списки в Python представляют изменяемый тип данных( т.е элементы списка можно изменять после создания самого списка, а вот строка — неизменяемый тип!)

!Поэтому если обе переменные будут указывать на один и тот же список, то копирования не произойдет, мы получим 2 совершенно одинаковых списка в результате.

смотри пример:

cities1=[«Moscow», «Sochi», «Vologda»] cities2=cities1 #список cities2 и список cities1 указывают на один и тот же объект
cities2.append(«Kazan») #добавляем еще один элемент в список cities2
print(cities1) #[“Moscow”, “Sochi”, “Vologda”, ”Kazan”] print(cities2) #[“Moscow”, “Sochi”, “Vologda”, “Kazan”]

◾️LIST.COPY() :

Чтобы такого не случилось, можно воспользоваться встроенной функцией list.copy() —
тогда мы получим 2 списка, которые ссылаются на разные списки.

Посмотрим как работает:

cities1=[«Moscow», «Sochi», «Vologda»] cities2=cities1.copy() #список cities2 и список cities1 указывают на один и тот же объект
cities2.append(«Kazan») #добавляем еще один элемент в список cities2
print(cities1) #[“Moscow”, “Sochi”, “Vologda”] print(cities2) #[“Moscow”, “Sochi”, “Vologda”, “Kazan”]

все супер! Первый список остался неизмененным!

◾️Копирование частей списка

Иногда возникает ситуация, когда весь список нам копировать не требуется, достаточно только какой-то определенной части:

1. list[:end] — копируем список до end(не включая!)
2. list[start:end] — копируем список с start до end(не включая!)
3. list[start🔚step] -копируем список с start до end(не включая!) с шагом step

Пример:
cities=[«Moscow», «Sochi», «Vologda», «Kazan» ] new_cities=cities[:1] print(new_cities) #результат: [«Moscow»]

new_cities=cities[1:3] print(new_cities) #результат: [«Sochi», «Vologda»]

new_cities=cities[1:4:2] print(new_cities) #результат: [«Sochi», «Kazan»]

Где вы учитесь?

Вам также будет интересно

Кредит
К основным функциям кредита относятся: — перераспределительная (благодаря кредитным отношениям временно свободные денежные средства...
Виды познания
Познание, его уровни и ступени. Чувственное познание — познание при помощи органов чувств: обоняния, осязания, слуха, зрения, вкуса. Ступени: ...
Площади поверхностей фигур
Продолжаем повторять формулы стереометрии, на этот раз площадь поверхности. Площадь поверхности любой пространственной фигуры — это сумма всех...
Форма правления
Форма правления 🤝 Повторим определение: форма правления, это характеристика состава высших органов государственной власти, порядка их формирования,...
Список частично признанных государств
Давно искал компактную шпаргалку по частично признанным государствам? Тут мы подготовили для вас полезную информацию про Республику Косово, Тайвань,...
Кремний: его свойства и соединения
КРЕМНИЙ (Si) — элемент IVA группы и третьего периода с атомным номером 14. У кремния 4 валентных электрона, характерные степени окисления в...

0 комментария

Авторизуйтесь, чтобы оставить комментарий.