Как изменить диапазон в Python

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

Синтаксис

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

Параметры

  1. Аргумент start — это начальный номер серии. т.е. нижний предел. По умолчанию он начинается с 0, если не указан.
  2. Аргумент stop является верхним пределом. т.е. создавать числа до этого числа. Диапазон () не включает это число в результат.
  3. Шаг — это разница между каждым числом в выход. Если не указано иное, значение шага по умолчанию равно 1.

Пример range ()

 для i  in range (4, 24, 4): quotient = i/4 print (f "{i} делится на 4 равно {int (quotient)}.") 

Запуск онлайн

В этом цикле for вы могли просто создать диапазон целых чисел, которые делятся на 4, поэтому вам не нужно было указывать каждое из них самостоятельно.

Результат

 4 разделить на 4 равно 1,8, разделить на 4, получится 2,12, разделить на 4, будет 3,16, разделить на 4, получится 4,20, разделенное на 4  равно 5 

Увеличение с помощью функции range ()

Если вам нужно увеличить, тогда вам нужен step должно быть положительным числом. Чтобы лучше понять, что это означает в реальной жизни, см. Следующий код.

 для i в диапазоне (  3, 24, 10): print (f "{i}") 

Run Online

Вывод

 31323 

Вы получили диапазон чисел, каждое из которых было больше предыдущего на 10, и это шаг, который вы указали.

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

Python range reverse

Изменение диапазона или последовательность чисел приводит к последовательности, содержащей числа из диапазона в обратном порядке. Если аргумент шага отрицательный, вы перемещаетесь по последовательности убывающих чисел и убываете. Это позволяет нам перебирать числа назад.

 для i в диапазоне (5, 0, -1): print (f "{i}") 

Запуск в сети

Вывод

 54321 

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

Чтобы перевернуть диапазон (5, 0, -1), ваши шаги должны быть следующими.

  1. Ваше начало должно быть максимальным числом вашего диапазона.
  2. Ваш стоп-ордер должен быть минимальным числом — 1 в вашем диапазоне.
  3. Вы должны уменьшить его на 1 (-1), чтобы получить точную противоположность вашего списка.

В приведенном выше коде нам нужно изменить 1 на 5, что означает 5 на 1. Итак, наше максимальное начальное значение, равное 5, затем минимальное значение -1 означает, что 1-1 равно 0, что является конечным значением, и мы не включили это значение в диапазон. Тогда наш шаг равен -1. Это означает, что 5, 5-1 = 4, 5-2 = 3, 5-3 = 2, 5-4 = 1. Итак, мы получаем точное обратное значение.

Это не стандартный способ, но если вы хотите изменить любой вид range (), вам нужно точно рассчитать все шаги. Не каждый раз так будет. Давайте посмотрим на стандартный способ обратного преобразования элементов диапазона.

Питонический способ обратного преобразования диапазона ()

Самый питонический способ создания диапазон, который уменьшается, — использовать range (start, stop, step). Но Python предоставляет нам встроенную функцию reversed (). Если вы оберните метод range () внутри метода reversed (), вы можете распечатать целые числа в обратном порядке.

 для i в обратном порядке (range (5)): print (i) 

Запуск в сети

Вывод

 543210 

Диапазон () упрощает итерацию через убывающую серию чисел, тогда как reversed () используется для перебора серии в обратном порядке.

Заключение

Чтобы отменить range () в Python, мы можем использовать reverse () с функцией range (). Кроме того, если вы знаете точную разницу между числами, вы можете изменить диапазон, указав отрицательный шаг. Это все для обратного диапазона Python.

Оцените статью
nanomode.ru
Добавить комментарий