Работа функций range(max())

не совсем понимаю как работает данный код

n = 6
for x in range(max(n, 0)):
    print(n)

а именно функции range(max(n,0))


Ответы (1 шт):

Автор решения: CrazyElf
for x in range(max(n, 0)):

Вообще это бессмысленная конструкция. Код max(n, 0) ограничивает нижнее значение этого выражения нулём, то есть при любом n <= 0 выражение max(n, 0) будет равно 0. При этом и range(0) и range(n) при n <= 0 одинаково дадут итератор, который не выдаст ничего, цикл ни разу не сработает. Таким образом, это выражение бессмысленно (по крайней мере для целых n), можно точно так же оставить просто:

for x in range(n):

И ничего не поменяется.

→ Ссылка