Дрон Кодер — программирование для детей и взрослых в игровой форме. Начать бесплатно

Как работает цикл for под капотом

Цикл for в Python устроен иначе, чем во многих языках: он перебирает элементы, а не считает по счётчику. Разберёмся.

for перебирает элементы

В Python for берёт последовательность (список, строку, диапазон) и по очереди достаёт из неё элементы, подставляя каждый в переменную цикла. Не «сделай 5 раз со счётчиком», а «пройди по каждому элементу».

for letter in 'код':
    print(letter)   # к, о, д — по одной букве

range — это тоже последовательность

Когда пишут for i in range(5), range(5) даёт последовательность чисел 0,1,2,3,4, и for перебирает их. То есть привычный «счётчик» — частный случай перебора чисел, а не отдельная конструкция.

Почему это удобно

Раз for перебирает элементы напрямую, не нужно возиться с индексами и длиной — код короче и меньше ошибок. Эта же идея «пройти по каждому» лежит в основе задач вроде обхода поля дроном в игровых тренажёрах.

Частые вопросы

Как получить и номер, и элемент? Через enumerate — он даёт индекс и значение сразу.

Можно ли перебирать словарь? Да, for пройдёт по его ключам.

Начать игру бесплатно
Попробуй прямо здесь
Уровень 1

Задание