Длина и последний элемент
Часто вы не знаете, сколько в списке элементов. Может быть, его заполнила другая часть программы, а может быть, количество элементов меняется прямо во время работы (добавлять и удалять элементы вы научитесь в следующих упражнениях). Узнать длину всегда можно с помощью len() (сокращение от length — «длина»):
students = ["Яна", "Борис", "Нина", "Давид", "Алиса"]
print(len(students))Вывод:
5Как и print(), len() — это функция: команда, которую вызывают, написав её имя и, в скобках, значение, с которым она должна работать. len() даёт число, поэтому его можно сохранить в переменной, использовать в вычислениях или вывести с подписью: print("Учеников:", len(students)) выведет Учеников: 5.
Зная len(), вы можете найти последний элемент. Индексы начинаются с 0, поэтому последний индекс всегда на единицу меньше количества элементов: у списка из 5 элементов индексы 0, 1, 2, 3 и 4. Значит, последний элемент находится по индексу len(students) - 1:
print(students[len(students) - 1])Вывод:
АлисаСначала Python вычисляет индекс в квадратных скобках (5 − 1 = 4), а затем читает элемент с этим индексом. Типичная ошибка — забыть про - 1: students[len(students)] обращается к индексу 5, где элемента нет, и завершается с ошибкой IndexError: list index out of range.
Последний элемент нужен так часто, что в Python для него есть короткий путь — отрицательные индексы, которые считаются с конца. Индекс -1 — последний элемент, -2 — предпоследний и так далее:
print(students[-1])
print(students[-2])Вывод:
Алиса
Давидstudents[-1] — всегда последний элемент, как бы длинен ни был список. Поэтому программисты на Python пишут именно так, а не students[len(students) - 1].
Задание
- 1
Выведите количество коллег с подписью:
print("Коллег:", len(colleagues)). Вывод должен быть таким:Коллег: 3. - 2
Создайте переменную
last_colleagueи сохраните в ней последний элемент спискаcolleagues. Используйте отрицательный индекс, а не число2. - 3
Выведите
last_colleague.