如何在Python中反转范围

需要执行特定次数的操作时,Python的内置range()函数非常方便。 range()函数使我们能够在给定范围内生成一系列数字。根据传递给range()函数的参数个数,您可以选择该数字序列的开始和结束位置以及一个数字与下一个数字之间的差值。

句法

range(start, stop, step)

参量

  1. 开始参数是系列的开始编号。即下限。默认情况下,如果未指定,则以0开头。
  2. 停止参数是一个上限。即创建不超过该数字的数字,range()不会在结果中包括该数字。
  3. 步骤是输出中每个数字之间的差。如果未指定,则该步骤的默认值为1。

range()的示例

for i in range(4, 24, 4):
    quotient = i / 4
    print(f"{i} divided by 4 is {int(quotient)}.")

在线运行

在此for循环中,您只需创建一个整数范围即可被4整除的整数,因此您不必自己提供每个整数。

输出量

4 divided by 4 is 1.
8 divided by 4 is 2.
12 divided by 4 is 3.
16 divided by 4 is 4.
20 divided by 4 is 5

使用range()函数递增

如果必须递增,则希望步长为正数。要更真实地描述这在现实生活中的含义,请参见以下代码。

for i in range(3, 24, 10):
    print(f"{i}")

在线运行

输出量

3
13
23

您得到的数字范围分别比上一个数字大10,这是您提供的步骤。

既然您已经了解了如何在范围内以积极的步伐向前迈进,现在让我们来看看如何以负面的步伐向后迈进。

Python范围反转

反转范围或数字序列会导致序列包含该范围中数字的倒序排列。如果您的step参数为负,那么您将经历一系列递减的数字并递减。这使我们能够向后浏览数字。

for i in range(5, 0, -1):
    print(f"{i}")

在线运行

输出量

5
4
3
2
1

在上面的示例中,我们的步骤是-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(),则必须精确计算所有步骤。并非每次都正确。让我们来看看反转范围项目的标准方法。

用Python方式反转range()

生成递减范围的最Python方式是使用range(开始,停止,步进)。但是Python为我们提供了一个内置的reversed()函数。如果将range()方法盘点在reversed()方法内,则可以按相反顺序打印整数。

for i in reversed(range(5)):
    print(i)

在线运行

输出量

5
4
3
2
1
0

使用range()可以轻松地迭代递减的数字序列,而reversed()用于以相反的顺序循环遍历该系列。

结论

要在Python中反转range(),我们可以将reverse()与range()函数一起使用。另外,如果您知道数字之间的确切差异,则可以通过提供负阶跃来反转范围。 Python反向范围就是这样。

资讯来源:由0x资讯编译自APPDIVIDEND,版权归作者Krunal所有,未经许可,不得转载
你可能还喜欢