
Функция range( ) в Python
Синтаксис:
range(start, stop, step)
Данная функция создаёт объект range, который возвращает неизменяемую последовательность чисел в диапазоне от start, до stop с шагом step.
Переданное в аргумент stop число, не включается в диапазон, а возвращается stop - 1. Т.е функция range(1, 5) вернёт числа от 1 до 4.
Start и step - необязательные аргументы. Если передать только один аргумента range(5), то отчёт начнётся с 0 до 4.
my_range = range(5)
for i in my_range:
print(i)
0
1
2
3
4
Если передадим два аргумента, первый будет использоваться как start, а второй как stop соответственно:
my_range = range(1, 10)
for i in my_range:
print(i)
1
2
3
4
5
6
7
8
9
Третим аргументом выступает step(шаг с англ.), по умолчанию step равен 1.
my_range = range(1, 10, 2)
for i in my_range:
print(i)
1
3
5
7
9
Для генерации убывающих последовательностей нужно использовать отрицательный шаг и указать start - большим числом с которого начинается отчёт, до stop, не забывая, что отчёт будет идти до stop - 1:
my_range = range(10, 0, -1)
for i in my_range:
print(i)
10
9
8
7
6
5
4
3
2
1
range также поддерживает отрицательные значения start и stop для генерации отрицательных последовательностей:
my_range = range(-10, 0, 1)
for i in my_range:
print(i)
-10
-9
-8
-7
-6
-5
-4
-3
-2
-1
Данная функция полезна для перебора значений в цикле, выполнения функций либо других операций n-ое количество раз.
for i in range(1, 20):
do_something...