← Все вопросы
Как сделать цикл с обратным отсчётом от 10 до 1?
11
Нужно напечатать числа от 10 до 1 в порядке убывания. Через range как-то не получается, выдаёт пусто.
3 ответа
17
✓ Принятый ответ — помог автору
Третий аргумент range — это шаг, поставь -1:
for i in range(10, 0, -1):
print(i)
# 10 9 8 ... 1
Обрати внимание: конец 0 не включается (как и при обычном range), поэтому до 1 включительно пишем именно 0. Если нужно до 0 включительно — пиши range(10, -1, -1).
У тебя выдавало пусто, потому что без шага range(10, 0) идёт по возрастанию, а от 10 к 0 возрастать нельзя — отсюда пустота.
Никита Пименов да, забыл про -1, спасибо! · 6 месяцев назад
8
range(10, 0, -1).
5
Можно ещё reversed(range(1, 11)) — читается чуть нагляднее.
Ваш ответ
Войдите, чтобы ответить на вопрос.