Глава 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, без установки
Открыть практику →