← Все вопросы

range(2, 10, 2) — что значат три числа в range и как идти с шагом?

Задан 10 месяцев назад1.2к просмотров2 ответа
5

Знаю range(10) и range(1, 6). А недавно увидел range(2, 10, 2) с тремя числами и не понял, что делает третье. Хочу пройти по чётным числам от 2 до 8 — это про это?

2 ответа

10
✓ Принятый ответ — помог автору

Да, ровно про это. У range три аргумента: старт, стоп, шаг.

for i in range(2, 10, 2):
    print(i)   # 2, 4, 6, 8
  • 2 — с чего начать,
  • 10 — до чего идти (не включая 10),
  • 2 — на сколько прибавлять каждый раз.

Шаг может быть и отрицательным, тогда идёшь в обратную сторону:

for i in range(10, 0, -1):
    print(i)   # 10, 9, 8, ... 1
3

Запомни главную ловушку: стоп не входит. range(2, 10, 2) доходит до 8, а не до 10. Если нужно включить 10 — ставь стоп чуть больше, например range(2, 11, 2).

Ваш ответ

Войдите, чтобы ответить на вопрос.