Использование функции range() в Python3

Python3 内置函数Встроенные функции Python3

Функция range() в Python3 возвращает итерируемый объект (тип — object), а не тип list, поэтому при выводе на печать он не выведет список.

Функция list() в Python3 — это итератор объектов, который может преобразовать итерируемый объект, возвращаемый range(), в список, а тип возвращаемой переменной — список.

Python2 функция range()возвращает список.

Синтаксис функции

range(stop)
range(start, stop[, step])

Описание параметра:

  • start: Отсчёт начинается с start. По умолчанию отсчёт начинается с 0. Например, range(5) эквивалентноrange(0, 5)
  • stop: Отсчёт заканчивается на stop, но не включает stop. Например: range(0, 5) — это [0, 1, 2, 3, 4] без 5
  • step: Размер шага, по умолчанию равен1. Например: range(0, 5) эквивалентно range(0, 5, 1)

Пример

Если указаны только начальное и конечное значения, размер шага по умолчанию равен 1:

Пример

for number in range(1, 6):
    print(number)

Результат вывода:

1
2
3
4
5

Если указан только один параметр, генерируется последовательность целых чисел, начиная с 0, где параметр является конечным значением, а размер шага по умолчанию равен 1:

Пример

for number in range(6):
    print(number)

Результат вывода:

0
1
2
3
4
5

Вы можете указать размер шага, чтобы каждый раз увеличивать на разные величины:

Пример

for number in range(1, 6, 2):
    print(number)

Результат вывода:

1
3
5

Примечание: конечное значение 6 не включается.

Кроме того, можно использовать отрицательное число в качестве размера шага для генерации последовательности в обратном порядке от конечного значения:

Пример

for number in range(6, 1, -1):
    print(number)

Результат вывода:

6
5
4
3
2

Примечание:Если в качестве размера шага используется отрицательное число, начальное значение должно быть больше конечного.

Если вам нужно только сгенерировать последовательность целых чисел и не нужно использовать цикл for для её перебора, вы можете преобразовать возвращаемое значение функции range() в список или кортеж, например:

Следующий код генерирует список целых чисел:

Пример

>>> numbers = list(range(1, 6))
>>> numbers
[1, 2, 3, 4, 5]

Следующий код генерирует кортеж целых чисел:

Пример

>>> numbers = tuple(range(1, 6))
>>> numbers
(1, 2, 3, 4, 5)

Python3 内置函数Встроенные функции Python3

Другие расширения