Нужно пройти по дням 1..7 включительно. Какой вызов range() даст именно эти значения?

Arange(1, 8): даёт значения 1..7, верхняя граница 8 не включается
Brange(0, 7): даёт значения 0..6, нижняя граница 0 включена, верхняя 7 нет
Crange(7): даёт значения 0..6, счёт начинается с нуля, а нужны 1..7
Drange(1, 7): даёт значения 1..6, верхняя граница 7 не включается
Правильный ответ. В range(start, stop) верхняя граница не включается, поэтому stop берут на 1 больше нужного.

Разбор

Чтобы получить значения 1..7, нужно задать верхнюю границу равной 8: range(1, 8). Вызов range(1, 7) даст 1..6, range(7) и range(0, 7) дадут 0..6. Это типичная ошибка «на 1» при циклах и окнах: правую границу часто забывают увеличить.

Проверь себя · 1/3разбор после ответа
Нужно пройти по дням 1..7 включительно. Какой вызов range() даст именно эти значения?
Тренировать Python в Telegram

Ещё вопросы по теме «Циклы и условия»