Что вернёт list(range(5, 0, -1))?

AСписок [5, 4, 3, 2, 1, 0] — включая нижнюю границу ноль
BПустой объект range, потому что отрицательный шаг не допускается
CСписок [5, 4, 3, 2, 1] — нижняя граница не включается
DСписок [5, 3, 1] — только нечётные от пяти до единицы
Правильный ответ. range(start, stop, step) с отрицательным шагом считает вниз, не включая stop.

Разбор

Вызов range(5, 0, -1) генерирует числа от 5 с шагом -1 до тех пор, пока значение больше 0 (граница stop не включается). Получаем [5, 4, 3, 2, 1]. Ноль в результат не попадает — как и при обычном range, верхняя (или нижняя при обратном счёте) граница исключается.

Проверь себя · 1/3разбор после ответа
Чему равно выражение "a,b,c".split(",")?
Тренировать Python в Telegram

Ещё вопросы по теме «Синтаксис и типы данных»