Изменение, добавление
и удаление элементов
57
Сначала первый элемент извлекается из списка в точке
, а затем в точке
вы-
водится сообщение об этом мотоцикле. Программа выводит простое сообщение
о первом мотоцикле:
The first motorcycle I owned was a Honda.
Помните, что после каждого вызова
pop()
элемент, с которым вы работаете, уже
не находится в списке.
Если вы не уверены в том, какой из двух способов выбрать, команду
del
или метод
pop()
, — простое правило поможет вам определиться:
если вы собираетесь просто
удалить элемент из списка, никак не используя его, выбирайте команду
del
; если
же вы намерены использовать элемент после удаления из списка, выбирайте ме-
тод
pop()
.
Удаление
элементов по значению
Иногда позиция удаляемого элемента неизвестна. Если вы знаете только значение
элемента,
используйте метод
remove()
.
Допустим, из списка
нужно удалить значение
'ducati'
:
motorcycles = ['honda', 'yamaha', 'suzuki', 'ducati']
print(motorcycles)
❶
motorcycles.remove('ducati')
print(motorcycles)
Код в точке
приказывает Python определить, в какой позиции списка находится
значение
'ducati'
, и удалить этот элемент:
['honda', 'yamaha', 'suzuki', 'ducati']
['honda', 'yamaha', 'suzuki']
Метод
remove()
также может использоваться для работы со значением, которое
удаляется из списка. Следующая программа удаляет значение
'ducati'
и выводит
причину удаления:
❶
motorcycles = ['honda', 'yamaha', 'suzuki', 'ducati']
print(motorcycles)
❷
too_expensive = 'ducati'
❸
motorcycles.remove(too_expensive)
print(motorcycles)
❹
print(f"\nA {too_expensive.title()} is too expensive for me.")
После определения списка в точке
значение
'ducati'
сохраняется в перемен-
ной с именем
too_expensive
в точке
. Затем эта переменная сообщает Python,
какое значение должно быть удалено из списка
. В точке
значение
'ducati'
было удалено из списка, но продолжает храниться в переменной
too_expensive
,