Видеокурс выложен на сайте Altube.ru вместо Youtube и плеер Altube не поддерживает субтитры. Прошу решить вопрос о предоставлении русских субтитров в этом англоязычном видеокурсе. |
Списки
По ссылке youtube выложено видео с русскими титрами.
16.1. Список является последовательностью
Подобно строке, список - последовательность значений. В строке значениями являются символы, в списке - они могут быть любого типа. Значения в списке называются элементами (elements) или иногда записями (items).
Есть несколько путей создания нового списка, самый простой - заключить элементы в квадратные скобки [ ]:
>>> [10, 20, 30, 40] [10, 20, 30, 40] >>> ['crunchy frog', 'ram bladder', 'lark vomit'] ['crunchy frog', 'ram bladder', 'lark vomit']
В первом примере - список из четырех целых чисел, во втором - список из трех строк.
Элементы списка могут быть разного типа. Следующий список содержит строку, число с плавающей точкой, целое число и (внимание!) другой список:
>>> ['spam', 2.0, 5, [10, 20]] ['spam', 2.0, 5, [10, 20]]
Список внутри другого списка является вложенным (nested).
Список, который не содержит элементов, называется пустым (empty list), его можно создать с помощью пустых квадратных скобок [ ].
>>> cheeses = ['Cheddar', 'Edam', 'Gouda'] >>> numbers = [17, 123] >>> empty = [] >>> print cheeses, numbers, empty ['Cheddar', 'Edam', 'Gouda'] [17, 123] []
16.2. Списки изменчивы
Синтаксис для доступа к элементам списка похож на доступ к символам строки - оператор скобки. Выражение внутри скобок определяют индекс. Запомните, что индекс начинается с нуля:
>>> print cheeses[0] Cheddar
В отличие от строк, списки можно изменять, поэтому вы можете изменить порядок элементов в списке или переприсвоить элементы в списке. Когда оператор скобок появляется в левой части выражения, он определяет элемент списка, который будет присвоен.
>>> numbers = [17, 123] >>> numbers[1] = 5 >>> print numbers [17, 5]
Вы можете представить список как связь между индексами и элементами. Эта связь называется отображением (mapping), каждый индекс отображается на один из элементов.
Следующая диаграмма состояний показывает списки cheeses, numbers и empty:
Списки на рисунке представлены прямоугольниками со словом список (list) снаружи и элементами списка внутри.
Список индексов работает так же, как и строковые индексы:
-
Любое целочисленное выражение можно использовать в качестве индекса.
-
Если вы попытаетесь прочитать или записать элемент, которого не существует, вы получите IndexError.
-
Если индекс имеет отрицательное значение, он ведет счет в обратном направлении от конца списка.
Оператор in работает аналогично для списков.
>>> cheeses = ['Cheddar', 'Edam', 'Gouda'] >>> 'Edam' in cheeses True >>> 'Brie' in cheeses False