• burger-icon

    Шаг 2. Функция range()

    Баллов за прохождение: 1

    range()

    Вы уже знаете, что в Python существуют различные коллекции. С помощью функции range() можно сгенерировать итерируемый объект, состоящий из целых чисел.

    Функция range() в Python создает последовательность чисел в указанном диапазоне. Она обычно используется в циклах for для выполнения повторяющихся операций определенное количество раз. Синтаксис range() обычно выглядит так: range(start, stop, step), где start - начальное значение последовательности (по умолчанию 0), stop - конечное значение последовательности (не включается), а step - шаг изменения чисел (по умолчанию 1). Функция range() может принимать один, два или три аргумента, в зависимости от того, какой диапазон чисел вам нужен.

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

    Пример 1: Использование одного аргумента в качестве конечного значения (stop):

    # Создаем последовательность чисел от 0 до 4 (исключительно)
    for i in range(5):
        print(i)
    

    Результат:

    0
    1
    2
    3
    4

    Отсюда стоит сделать несколько выводов!

    Вывод 1: Счёт начинается с нуля;
    Вывод 2: Граница конечного значения (stop) не включительна!

     

    Пример 2: Использование двух аргументов в качестве начального и конечного значения (start, stop):

    # Создаем последовательность чисел от 2 до 6 (исключительно)
    for i in range(2, 7):
        print(i)

    Результат:

    2
    3
    4
    5
    6

    Отсюда тоже нужно сделать вывод, что старт значение должно быть всегда меньше чем стоп-значение, так как значение всегда увеличивается на 1.

     

    Пример 3: Использование трех аргументов: начальное, конечное и шаг (start, stop, step).

    # Создаем последовательность чисел от 1 до 10 (исключительно) с шагом 2
    for i in range(1, 11, 2):
        print(i)

    Результат:

    1
    3
    5
    7
    9
    10

    Теперь к единице добавляется не по 1, а по 2. Попробуйте также сделать (5, 35, 5), тогда будет шаг каждые 5.

     

    Пример 4: Отрицательный шаг.

    # Создаем убывающую последовательность чисел от 10 до 1 (не включая 1) с шагом -1
    for i in range(10, 0, -1):
        print(i)
    

    Результат:

    10
    9
    8
    7
    6
    5
    4
    3
    2
    1

    Наконец старт может быть больше, чем стоп, потому что шаг отрицательный, и теперь цикл движется в обратную сторону!

     

    Дополнительные факты о range():

    Ленивая вычислительная модель: Функция range() использует ленивую вычислительную модель. Это означает, что она не создает список всех чисел в заданном диапазоне сразу, а генерирует их по мере необходимости. Это экономит память и обеспечивает эффективное использование ресурсов, особенно при работе с большими диапазонами чисел.

    Поддержка в циклах: Функция range() часто используется в циклах for для выполнения итераций определенное количество раз. Это особенно полезно, когда нужно выполнить повторяющиеся операции с определенным числом итераций.

    Использование в качестве итерируемого объекта: Результат вызова функции range() является итерируемым объектом, что означает, что его можно использовать вместе с другими итерируемыми объектами или функциями, такими как zip(), enumerate(), и sum(), для различных манипуляций с данными.

    Использование в списковых включениях: Функция range() также может использоваться в списковых включениях для создания списков чисел в указанном диапазоне. Например:

    numbers = [i for i in range(1, 6)]
    print(numbers)  # Output: [1, 2, 3, 4, 5]
    

    Нет преобразования типов данных: Важно помнить, что объект, возвращаемый функцией range(), не является списком, даже если его можно использовать в подобных контекстах. Если требуется список чисел, можно использовать функцию list() для преобразования результата range() в список.

    Для решения задачи, Зарегистрируйтесь или Войдите на сайт.