Глава 11 · Очень много информации!
remove, pop, clear, del
Четыре способа что-то убрать из списка — у каждого своя роль, и путать их не стоит.
remove() — удалить по значению
remove.py
names = ["Anna", "Oleg", "Maria"]
names.remove("Oleg")
print(names) # ["Anna", "Maria"]
pop() — удалить по позиции и вернуть значение
pop.py
names = ["Anna", "Oleg", "Maria"]
removed = names.pop(1)
print(names, removed) # ["Anna", "Maria"] Oleg
| remove(value) | pop(index) | |
|---|---|---|
| Удаляет по | значению | позиции (индексу) |
| Что возвращает | ничего (None) | удалённое значение |
| Если аргумент не подходит | ValueError, если значения нет | IndexError, если индекса нет |
pop() без аргумента — удаляет последний элемент
names.pop() без индекса убирает и возвращает последний элемент списка. Это пригодится, если использовать список как стек — подробнее о стеках будет в следующих главах.clear() и del — два разных способа «опустошить»
clear_del.py
items = [1, 2, 3]
items.clear()
print(items) # [] — тот же список, но пустой
other = [1, 2, 3]
del other[1]
print(other) # [1, 3] — удалили один элемент по индексу
third = [1, 2, 3]
del third # удалили саму переменную
| Команда | Что происходит |
|---|---|
items.clear() | тот же объект-список остаётся, но становится пустым |
del items[i] | удаляет элемент с индексом i (сам список остаётся) |
del items | удаляет саму переменную-имя (глава 3) — после этого items не существует |
После del items имя items больше не существует
print(items) после del items вызовет NameError — это то же самое поведение del, что мы видели в главе 3 для обычных переменных, только теперь применённое к списку.Практика: remove, pop, clear, del
Интерактивный ноутбук прямо в браузере — Python 3.14 через Pyodide, без установки