Глава 11 · Очень много информации!
Мощные операции со списками!
Списки изменяемы — у них есть целый набор методов для добавления, удаления, поиска и сортировки.
У списков (в отличие от строк) есть методы, которые изменяют сам список — списки, в отличие от строк, изменяемы.
Копирование и добавление
kopirovanie.py
original = [1, 2, 3]
kopiya = original.copy()
kopiya.append(4)
print(original) # [1, 2, 3] — не изменился
print(kopiya) # [1, 2, 3, 4]
kopiya = original — это не копия!
kopiya = original создаёт вторую переменную, указывающую на тот же самый список — изменение через одну переменную видно и через другую. Чтобы получить настоящую независимую копию, нужен .copy() (или срез original[:]).Подсчёт и очистка
podschet.py
chisla = [1, 2, 2, 3, 2]
print(chisla.count(2)) # 3 — сколько раз встречается 2
chisla.clear()
print(chisla) # [] — список пуст
Конкатенация
konkatenaciya_spiskov.py
a = [1, 2]
b = [3, 4]
print(a + b) # [1, 2, 3, 4]
Поиск внутри списка
poisk.py
fruits = ["яблоко", "банан", "вишня"]
print("банан" in fruits) # True
print(fruits.index("вишня")) # 2 — индекс элемента
Добавление и удаление элементов
dobavlenie_udalenie.py
fruits = ["яблоко", "банан"]
fruits.append("вишня") # добавить в конец
fruits.insert(0, "манго") # вставить по индексу
print(fruits)
fruits.remove("банан") # удалить по значению
last = fruits.pop() # удалить и вернуть последний элемент
print(fruits, last)
Разворот и сортировка
razvorot_sortirovka.py
chisla = [3, 1, 4, 1, 5]
chisla.sort()
print(chisla) # [1, 1, 3, 4, 5]
chisla.reverse()
print(chisla) # [5, 4, 3, 1, 1]
Практика в Jupyter Notebook
11-03-operacii-so-spiskami.ipynb · все операции этого раздела