Диапазон Python ()

Тип range () возвращает неизменяемую последовательность чисел между заданным начальным целым числом и конечным целым числом.

range() конструктор имеет две формы определения:

 диапазон (стоп) диапазон (старт, стоп (, шаг))

range () Параметры

range() принимает в основном три аргумента, которые одинаково используются в обоих определениях:

  • start - целое число, начиная с которого должна быть возвращена последовательность целых чисел
  • стоп - целое число, перед которым должна быть возвращена последовательность целых чисел.
    Диапазон целых чисел заканчивается на stop - 1.
  • step (необязательно) - целочисленное значение, определяющее приращение между каждым целым числом в последовательности

Возвращаемое значение из диапазона ()

range() возвращает неизменяемый объект последовательности чисел в зависимости от используемых определений:

диапазон (стоп)

  • Возвращает последовательность чисел от 0доstop - 1
  • Возвращает пустую последовательность, если stopесть negativeили 0.

диапазон (начало, остановка (, шаг))

Возвращаемое значение рассчитывается по следующей формуле с заданными ограничениями:

 r (n) = start + step * n (как для положительного, так и для отрицательного шага), где n> = 0 и r (n) = 0 и r (n)> stop (для отрицательного шага)
  • (Если нет step) Step по умолчанию 1. Возвращает последовательность чисел, начиная с startи заканчивая на stop - 1.
  • (если stepравно нулю) вызывает ValueErrorисключение
  • (если stepне равно нулю) Проверяет соблюдение ограничения значения и возвращает последовательность в соответствии с формулой.
    Если оно не соответствует ограничению значения, возвращается пустая последовательность.

Пример 1: Как диапазон работает в Python?

 # empty range print(list(range(0))) # using range(stop) print(list(range(10))) # using range(start, stop) print(list(range(1, 10)))

Вывод

 () (0, 1, 2, 3, 4, 5, 6, 7, 8, 9) (1, 2, 3, 4, 5, 6, 7, 8, 9) 

Примечание. Мы преобразовали диапазон в список Python, поскольку он range()возвращает объект, подобный генератору, который печатает вывод только по запросу.

Однако к объекту диапазона, возвращаемому конструктором диапазона, также можно получить доступ по его индексу. Поддерживает как положительные, так и отрицательные индексы.

Вы можете получить доступ к объекту диапазона по индексу как:

 rangeObject (индекс)

Пример 2: Создайте список четных чисел между заданными числами, используя range ()

 start = 2 stop = 14 step = 2 print(list(range(start, stop, step)))

Вывод

 (2, 4, 6, 8, 10, 12) 

Пример 3: Как range () работает с отрицательным шагом?

 start = 2 stop = -14 step = -2 print(list(range(start, stop, step))) # value constraint not met print(list(range(start, 14, step)))

Вывод

 (2, 0, -2, -4, -6, -8, -10, -12) () 

Интересные статьи...