从零开始学Python|通过示例了解Python中的范围是什么?

举报
Yuchuan 发表于 2021/03/16 16:23:43 2021/03/16
【摘要】 在这里我们了解了如何在python中使用range以及几个示例,包括python中的for循环以及python中range和xrange之间的区别。我希望您对本教程中与您共享的所有内容一清二楚。

Python编程语言带有内置数据类型列表字典集合元组等范围在python是另一种内置的Python数据类型主要用于与python循环。它返回在函数参数中指定的数字序列。在本文中,我们将通过各种示例详细了解python中的范围。以下是此博客中涉及的主题:

Python中的范围是什么?

它是Python中的内置函数,它返回一个从0开始并递增到1直到达到指定数字的数字序列。范围函数最常见的用途是迭代序列类型。它最常用于for和while循环

范围参数

以下是我们在python中使用的范围函数参数:

  • 起始–这是起始参数,它指定范围函数中数字序列的起始。
  • 停止–这是序列的终点,该数字在到达停止参数后将立即停止。
  • 步长–步长或序列中每个数字之前的增量数由步长参数决定。
range(start, stop, step)

范围与循环

下面是一个示例,说明如何在for循环中使用范围函数。该程序将打印从2到20的偶数。

for i in range(2,20,2):
     print(i)
输出:  2 
        4 
        6 
        8 
        10 
        12 
        14 
        16 
        18

正负步长递增

我们可以使用python中的range来使用正整数和负整数来增加和减少步长值,下面的程序演示了如何使用正负步长值来获取两个订单中的数字序列。

for i in range(2, 20, 5):
     print(i, end=", ")
for j in range(25, 0 , -5):
     print(j , end=", ")
输出:  2,7,12,17,25,20,15,10,5

范围内的浮点数

范围函数不支持浮点数或非整数,但是有一些方法可以解决此问题,并且仍然可以获取带浮点值的序列。以下程序显示了我们可以遵循的使用范围内浮动的方法。

def frange(start , stop, step):
     i = start
     while i < stop:
             yield i
             i += step
 
for i in frange(0.6, 1.0, 0.1):
     print(i , end=",")
输出:  0.6、0.7、0.8、0.9

Python中的反向范围

以下程序显示了如何在python中反转范围。它将反向返回前5个自然数的列表。

for i in range(5, 0, -1):
    print(i, end=", ")
输出:  5、4、3、2、1、0

范围与XRange

  • range和xrange之间的主要区别是range返回一个python列表对象,而xrange返回一个xrange对象。
  • 在大多数情况下,range和xrange基本上具有相同的功能,即用户可以按顺序提供数字序列。
  • xrange不会像range在运行时那样生成静态列表。它使用一种称为yield的特殊技术来创建我们所需的值,该技术被称为生成器的对象使用。
  • 如果需要多次遍历一个序列,最好使用range而不是xrange。
  • 在python 3中,xrange不再存在,因此最好使用range。我们可以使用python提供的2to3工具以任何方式转换您的代码。

连接两个范围函数

在下面的程序中,两个范围函数之间存在一个串联。

from itertools import chain 
 
res = chain(range(10) , range(10, 15))
for i in res:
    print(i , end=", ")
输出:  0、1、2、3、4、5、6、7、8、9、10、11、12、13、14

使用索引值访问范围

以下程序显示了如何使用索引访问范围。

a = range(0,10)[3]
b = range(0,10)[5]
print(a)
print(b)
输出:  3 
        5

将范围转换为列表

以下程序显示了如何使用类型转换将范围简单地转换为列表。

a = range(0,10)
b = list(a)
c = list(range(0,5))
print(b)
print(c)
输出:  [0,1,2,3,4,5,6,7,8,9] 
        [0,1,2,3,4]

要记住的要点

  • python中的range函数仅适用于整数或整数。
  • 在range函数中传递的参数只能是整数数据类型,不能是任何其他数据类型。
  • 传递的所有三个参数可以是正整数或负整数。
  • 步骤参数的值不能为零,否则将引发ValueError异常。
  • python中的range函数也是数据类型之一。
  • 您可以使用索引值来访问范围函数中的元素,就像列表数据类型一样。

这使我们到了本文的结尾,在这里我们了解了如何在python中使用range以及几个示例,包括python中的for循环以及python中range和xrange之间的区别。我希望您对本教程中与您共享的所有内容一清二楚。

 

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。