Удаление элементов: pop()
Противоположность append() — метод pop(): он удаляет последний элемент списка. В скобках ничего писать не нужно, но сами скобки обязательны.
Кроме изменения списка, pop() отдаёт вам удалённый элемент, чтобы вы могли с ним дальше работать. Говорят, что метод возвращает элемент, а элемент — это его возвращаемое значение. Возвращённое значение можно сохранить в переменной:
colors = ["синий", "белый", "розовый"]
last_color = colors.pop()
print(last_color)
print(colors)Вывод:
розовый
['синий', 'белый']Вызов colors.pop() удалил "розовый" из списка и вернул его, поэтому он сохранился в переменной last_color. Если удалённый элемент вам не нужен, просто напишите colors.pop() на отдельной строке.
Если в скобках указать индекс, pop() удалит элемент с этим индексом. Элементы после него сдвинутся на одно место влево, а их индексы уменьшатся на единицу:
scores = [12, 7, 30, 18]
first_score = scores.pop(0)
print(first_score)
print(scores)Вывод:
12
[7, 30, 18]Теперь 7 стоит по индексу 0. Если элемента с указанным индексом нет, программа завершится с ошибкой IndexError — так же, как при чтении элемента.
Не каждый метод что-то возвращает. append() только изменяет список, поэтому никогда не сохраняйте его результат: после colors = colors.append("красный") в переменной colors окажется None — значение Python, означающее «ничего», — а список пропадёт.
Задание
- 1
Проект Алисы завершён, и она уходит из команды. Удалите последний элемент списка
colleaguesс помощьюpop()и сохраните его в переменнойleaving_colleague. - 2
Выведите
leaving_colleague. - 3
Павел уходит на пенсию. Удалите первый элемент списка
colleaguesс помощьюpop(0)(на этот раз его значение вам не нужно) и выведитеcolleagues. Вывод должен заканчиваться так:['Даниил', 'Люба'].