python中xrange与range有什么区别-创新互联

小编给大家分享一下python中xrange与range有什么区别,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

成都创新互联主营平利网站建设的网络公司,主营网站建设方案,重庆APP开发公司,平利h5成都微信小程序搭建,平利网站营销推广欢迎平利等地区企业咨询

1.xrange与range区别

range的返回值就是一个list,在你调用range的时候,Python会产生所有的元素。而xrange是一个特别设计的可迭代对象,它在建立的时候仅仅保存终止值。你可比较以下两种写法的实际运行结果:

for v in range(1000000000000): #possible Memory Error
    if v == 2:
        break
    
for v in xrange(1000000000000): #fine
    if v == 2:
        break

在Python 3.X 中,不再有内建的xrange,其range等效于Python 2.X 的xrange

2.xrange参数说明:

start: 计数从 start 开始。默认是从 0 开始。例如 xrange(5) 等价于 xrange(0, 5)

stop: 计数到 stop 结束,但不包括 stop。例如:xrange(0, 5) 是 [0, 1, 2, 3, 4] 没有 5

step:步长,默认为1。例如:xrange(0, 5) 等价于 xrange(0, 5, 1)

3.xrange返回值

返回生成器。

4.总结:

1.range和xrange都是在循环中使用,输出结果一样。

2.range返回的是一个list对象,而xrange返回的是一个生成器对象(xrange object)。

3.xrange则不会直接生成一个list,而是每次调用返回其中的一个值,内存空间使用极少,因而性能非常好。

特别提醒: xrange函数在Python3中已经取消,在python3中,range()这种实现被移除了,保留了xrange()的实现,且将xrange()重新命名成range()。

所以Python3不能使用xrange,只能使用range

以上是“python中xrange与range有什么区别”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注创新互联行业资讯频道!


分享文章:python中xrange与range有什么区别-创新互联
当前地址:http://myzitong.com/article/copppc.html