← Все вопросы

Как сделать цикл с обратным отсчётом от 10 до 1?

Задан 6 месяцев назад1.4к просмотров3 ответа
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)) — читается чуть нагляднее.

Ваш ответ

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