xrange与range之间的区别

Posted 大家猴啊

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了xrange与range之间的区别相关的知识,希望对你有一定的参考价值。

xrange函数在Python3中已经取消

xrange并不是生成序列,而是作为一个生成器。即他的数据生成一个取出一个。
xrange比range性能优化很多,因为他不需要一下子开辟一块很大的内存,特别是数据量比较大的时候。
当需要输出一个列表的时候,就必须要使用range了。

python 基础 2.7 range与xrange的区别

#/usr/bin/python 
#coding=utf-8
#@Time :2017/10/25 19:22
#@Auther :liuzhenchuan
#@File :range与xrange的区别.py

示例1:range()打开时占用内存
#range生成一个list ,xrange是一个生成器 #range([start,] stop[, step]),
根据start与stop指定的范围以及step设定的步长,生成一个序列
print range(5) 
print range(1,5)
print range(1,5,2)
>>> [0, 1, 2, 3, 4]
   [1, 2, 3, 4]
   [1, 3]

示例2: xrange()不占用内存,大文件打开用xrange().
a = xrange(5)
print a
print list(a)
>>> xrange(5)
  [0, 1, 2, 3, 4]

b = xrange(1,5) 
print b
print list(b)
>>> xrange(1, 5)
[1, 2, 3, 4]

c = xrange(1,5,2) 
print c
print list(c)
>>> xrange(1, 5, 2)
[1, 3]


 






























以上是关于xrange与range之间的区别的主要内容,如果未能解决你的问题,请参考以下文章

range与xrange的区别

xrange与range的区别

python 基础 2.7 range与xrange的区别

python 中range与xrange的区别

Range和xrange的区别

python(47):range和xrange的区别和联系