Справочник · модуль 4 «Списки и текст»
Range(len(...))
Чтобы получить и номер, и элемент, идут по range(len(список)) и берут список[i].
Сравнение из жизни
Как идти по дому и смотреть на номер каждой квартиры.
Пример
names = ["Аня", "Макс", "Лиза"]
for i in range(len(names)):
print(i, names[i])0 Аня 1 Макс 2 Лиза
Учитель в уроке Если нужен и номер, и элемент, идут по номерам. Range от длины списка даёт все допустимые номера. Потом берём names[i].
Запомнить
range от длины — как идти по квартирам и смотреть на номер каждой. По номеру достаёшь нужный элемент.
Частые ошибки новичков на этой теме
Кажется: Изменить переменную цикла значит изменить список
На самом деле: x — копия текущего значения. Чтобы поменять список, меняем lst[i].
Кажется: Менять список на ходу цикла безопасно
На самом деле: Когда удаляем элемент, остальные сдвигаются и цикл перескакивает через соседа. Собираем новый список.
Тема из урока 4.3 «Список в цикле» курса PythonAZ.