Alterna · учебный материал

Цикл for и range

36.1: Цикл for и range. Короткая теория, один пример и пошаговая трасса Python.

Что в этом материале

Содержание и основные понятия

PY
Пример: сумма чисел от 1 до 3
Диапазон
range(1, 4)
даёт значения 1, 2 и 3. На каждом шаге число прибавляется к аккумулятору
total
; программа выводит 6.
total = 0
for i in range(1, 4):
total += i
print(total)
Этот пример можно прочитать без JavaScript. Ниже та же программа доступна для запуска и пошагового разбора.
for перебирает готовую последовательность значений. range(start, stop, step) включает start, но не включает stop.
суть и практика
8 класс
ОГЭ №6
ОГЭ №16
ЕГЭ №25
01
Как это устроено
for удобно применять, когда набор значений уже задан: числа диапазона, символы строки, элементы списка. range создаёт арифметическую последовательность с невключённой правой границей.
range(stop).
Даёт 0, 1, ..., stop - 1.
range(start, stop).
Начинает со start и не достигает stop.
range(start, stop, step).
Шаг не может быть нулём; при отрицательном шаге start должен быть больше stop.
Аккумулятор.
Переменная суммы, произведения или счётчика получает начальное значение до цикла.
02
Один пример в исполнении
Запусти короткую программу и переходи по строкам. Визуализатор показывает только код, текущую строку, переменные и вывод.
Чтобы включить
n
в возрастающий диапазон, пиши
range(1, n + 1)
. Пустой диапазон — это нормальный случай: тело не выполнится ни разу. Внутри цикла
i
— очередное значение, а не число повторений. Если нужен одновременно индекс и элемент, используй
enumerate
.
Карта алгоритма
Читай слева направо, затем запускай код.
1
Начало
2
total = 0
3
Взять следующее i из range
4
Добавить i к total
5
Вывести total
03
Запомнить
Проверь n = 0 и n = 1: диапазон может быть пустым.
Не путай range(1, n) и range(1, n + 1).
Для обратного счёта используй отрицательный шаг, например range(n, 0, -1).
Синтаксис этой страницы
for name in sequence:
По очереди связывает name с каждым элементом sequence.
range(stop)
Диапазон от 0 до stop без stop.
range(start, stop, step)
Диапазон с явным стартом и шагом; step не равен 0.
enumerate(sequence, start=0)
Перебирает индекс и элемент.
+=
Сокращённое обновление: total += value эквивалентно total = total + value.
%
Позволяет отфильтровать чётные значения.
int(input())
Читает границу диапазона.
print
Выводит накопленный ответ.

Структурная карта учебников