学习Python的时候,我们经常会看到xrange和range,那么Python中xrange和range有什么区别?跟着小编来看看吧。

  首先要说明一下,只有在Python2中才有Xrange和range;Python3中没有xrange,并且Python3中的range和Python2中的range有本质的区别,所以说这里的区别,主要针对Python2来说一下。

  不同点:

  在py2中,range得到的是一个列表,即

  X=range(0,5)

  Print(type(X))#打印X的类型,结果是list

  Print(X)#结果是[0,1,2,3,4]

  Xrange得到的是一个生成器对象,即

  X=xrange(0,5)

  Print(type(X))#输出类型,结果为一个生成对象

  Print(X)#输出X,结果为xrange(0,5)

  共同点:

  它们的使用都是一样的,比如都可以用for循环遍历所有的值

  Python3中为什么只有range呢?这个range其实就是py2中的xrange,而不是range,因为使用生成器可以节约内存。

  比如:代码是for i in range(0,1000),如果使用py2中的range,得到的结果是0到999的列表,会占用很大空间;但是如果使用生成器的话,就会节省很大的资源。

©著作权归作者所有:来自51CTO博客作者mb5fd1925b5d585的原创作品,如需转载,请注明出处,否则将追究法律责任

更多相关文章

  1. PHP数组常用函数
  2. PHP字符串常用函数
  3. Linux系统性能监控工具Tsar
  4. PHP初级知识本地搭建和常用标签类型
  5. PHP运算符、分支及循环
  6. 跟自己的战斗
  7. php数据类型
  8. PHP入门:集成环境、php运行原理、php使用方式和常见数据类型
  9. php运行原理、混编方式、常用数据类型

随机推荐

  1. Android窗口机制(二)Window,PhoneWindow,Deco
  2. Android:Picker(DatePicker、TimerPicker、
  3. Android imageView ScaleType.FIT_CENTER
  4. [Android]android源码下载&Eclipse关联an
  5. Android可缩放矢量图形(SVG)
  6. android开发每日汇总【2011-12-6】
  7. Android短信的发送和广播接收者实现短信
  8. android webview开发html5
  9. Android之Activity透明背景
  10. Android Tips---Android平台常见属性集合