54
Глава 3 • Списки
строенный вами сайт. Python предоставляет несколько способов добавления новых
данных в существующие списки.
Присоединение
элементов в конец списка
Простейший способ добавления новых элементов в список —
присоединение
эле-
мента в конец списка. Используя список из предыдущего примера, добавим новый
элемент
'ducati'
в конец списка:
motorcycles = ['honda', 'yamaha', 'suzuki']
print(motorcycles)
❶
motorcycles.append('ducati')
print(motorcycles)
Метод
append()
в точке
присоединяет строку
'ducati'
в конец списка, другие
элементы в списке при этом остаются неизменными:
['honda', 'yamaha', 'suzuki']
['honda', 'yamaha', 'suzuki', 'ducati']
Метод
append()
упрощает динамическое построение списков. Например, вы може-
те начать с пустого списка и добавлять в него элементы серией команд
append()
.
В следующем примере в пустой список добавляются элементы
'honda'
,
'yamaha'
и
'suzuki'
:
motorcycles = []
motorcycles.append('honda')
motorcycles.append('yamaha')
motorcycles.append('suzuki')
print(motorcycles)
Полученный список выглядит точно так же, как и списки из предыдущих примеров:
['honda', 'yamaha', 'suzuki']
Такой способ построения списков встречается очень часто, потому что данные, ко-
торые пользователь захочет сохранить в программе, часто становятся известными
только после запуска программы. Чтобы пользователь мог управлять содержимым
списка, начните с определения пустого списка, а затем присоединяйте к нему каж-
дое новое значение.
Вставка элементов в список
Метод
insert()
позволяет добавить новый элемент в произвольную позицию спи-
ска. Для этого следует указать индекс и значение нового элемента.
motorcycles = ['honda', 'yamaha', 'suzuki']
❶
motorcycles.insert(0, 'ducati')
print(motorcycles)
Изменение, добавление и удаление элементов
55
В этом примере в точке
значение
'ducati'
вставляется в начало списка. Ме-
тод
insert()
выделяет свободное место в позиции 0 и сохраняет в нем значение
'ducati'
. Все остальные значения списка при этом сдвигаются на одну позицию
вправо:
['ducati', 'honda', 'yamaha', 'suzuki']
Удаление элементов из списка
Нередко возникает необходимость в удалении одного или нескольких элементов
из списка. Например, когда игрок сбивает корабль пришельца, этот корабль стоит
удалить из списка активных врагов. Или когда пользователь решает удалить свою
учетную запись в созданном вами веб-приложении, этот пользователь должен быть
удален из списка активных пользователей. Элементы удаляются из списка по по-
зиции или по значению.
Удаление элемента
с использованием команды del
Если вам известна позиция элемента, который должен быть удален из списка, вос-
пользуйтесь командой
del
.
motorcycles = ['honda', 'yamaha', 'suzuki']
print(motorcycles)
❶
del motorcycles[0]
print(motorcycles)
В точке
вызов
del
удаляет первый элемент,
'honda'
, из списка
motorcycles
:
['honda', 'yamaha', 'suzuki']
['yamaha', 'suzuki']
Команда
del
позволяет удалить элемент из любой позиции списка, если вам
из вестен его индекс. Например, вот как из списка удаляется второй элемент,
'yamaha'
:
motorcycles = ['honda', 'yamaha', 'suzuki']
print(motorcycles)
del motorcycles[1]
print(motorcycles)
Второй элемент исчез из списка:
['honda', 'yamaha', 'suzuki']
['honda', 'suzuki']
В обоих примерах значение, удаленное из списка после использования команды
del
, становится недоступным.