Функция range
в Python возвращает последовательность чисел, которая часто используется для перебора значений в циклах for
. Она очень удобна для создания числовых последовательностей и может принимать от одного до трех аргументов.
Содержание
- Синтаксис
- Параметры
- Возвращаемое значение
- Примеры использования
- Пример 1: Использование одного аргумента (stop)
- Пример 2: Использование двух аргументов (start, stop)
- Пример 3: Использование трех аргументов (start, stop, step)
- Пример 4: Обратный порядок
- Пример 5: Преобразование объекта range в список
- Пример 6: Генерация индексов для списка
- Важные замечания
Синтаксис
range([start], stop[, step])
Параметры
start
(необязательный): Начальное значение последовательности. По умолчанию равно 0.stop
: Окончательное значение последовательности (не включается в последовательность).step
(необязательный): Шаг между значениями в последовательности. По умолчанию равен 1.
Возвращаемое значение
Функция range
возвращает объект, который является неизменяемой последовательностью чисел, соответствующей заданным параметрам. Этот объект можно преобразовать в список или использовать непосредственно в циклах.
Примеры использования
Пример 1: Использование одного аргумента (stop)
for i in range(5):
print(i)
# Вывод: 0 1 2 3 4
Пример 2: Использование двух аргументов (start, stop)
for i in range(1, 5):
print(i)
# Вывод: 1 2 3 4
Пример 3: Использование трех аргументов (start, stop, step)
for i in range(0, 10, 2):
print(i)
# Вывод: 0 2 4 6 8
Пример 4: Обратный порядок
for i in range(5, 0, -1):
print(i)
# Вывод: 5 4 3 2 1
Пример 5: Преобразование объекта range
в список
numbers = list(range(5))
print(numbers)
# Вывод: [0, 1, 2, 3, 4]
Пример 6: Генерация индексов для списка
fruits = ["apple", "banana", "cherry"]
for i in range(len(fruits)):
print(f"Index {i}: {fruits[i]}")
# Вывод:
# Index 0: apple
# Index 1: banana
# Index 2: cherry
Важные замечания
- Ленивое вычисление: Объект
range
не создает сразу всю последовательность чисел в памяти, а генерирует числа по мере необходимости, что экономит память. - Итерируемость: Объект
range
является итерируемым, поэтому его можно использовать в циклахfor
и других конструкциях, ожидающих итерируемый объект. - Поддержка отрицательного шага: Параметр
step
может быть отрицательным, что позволяет генерировать последовательности чисел в обратном порядке.