'Chico'
>>> marxes
['Groucho', 'Harpo']
Пришло время компьютерного жаргона! Не волнуйтесь, этого не будет на итоговом экзаме-
не. Если вы используете функцию append(), чтобы добавить новые элементы в конец списка,
и функцию pop(), чтобы удалить из конца этого же списка, вы реализуете структуру данных,
известную как LIFO (last in, first out — «последним пришел — первым ушел»). Такую струк-
туру чаще называют стеком. Вызов pop(0) создаст очередь FIFO (first in first out — «первым
пришел — первым ушел»). Эти структуры могут оказаться полезными, если вы хотите со-
бирать данные по мере их поступления и работать либо с самыми старыми (FIFO), либо
с самыми новыми (LIFO).
Определение смещения элемента по значению
с помощью функции index()
Если вы хотите узнать смещение элемента в списке по его значению, используйте
функцию index():
>>> marxes = ['Groucho', 'Chico', 'Harpo', 'Zeppo']
>>> marxes.index('Chico')
1
78
Глава 3. Наполнение Python: списки, кортежи, словари и множества
Проверка на наличие элемента в списке
с помощью оператора in
В Python наличие элемента в списке проверяется с помощью оператора in:
>>> marxes = ['Groucho', 'Chico', 'Harpo', 'Zeppo']
>>> 'Groucho' in marxes
True
>>> 'Bob' in marxes
False
Одно и то же значение может встретиться больше одного раза. До тех пор пока
оно находится в списке хотя бы в единственном экземпляре, оператор in будет
возвращать значение True:
>>> words = ['a', 'deer', 'a' 'female', 'deer']
>>> 'deer' in words
True
Если вы часто проверяете наличие элемента в списке и вас не волнует порядок элементов,
то для хранения и поиска уникальных значений гораздо лучше подойдет множество. О мно-
жествах мы поговорим чуть позже в этой главе.
Определяем количество включений значения
с помощью функции count()
Чтобы определить, сколько раз какое-либо значение встречается в списке, исполь-
зуйте функцию count():
>>> marxes = ['Groucho', 'Chico', 'Harpo']
>>> marxes.count('Harpo')
1
>>> marxes.count('Bob')
0
>>> snl_skit = ['cheeseburger', 'cheeseburger', 'cheeseburger']
>>> snl_skit.count('cheeseburger')
3