各位用户为了找寻关于python中range()与xrange()用法分析的资料费劲了很多周折。这里教程网为您整理了关于python中range()与xrange()用法分析的相关资料,仅供查阅,以下为您介绍关于python中range()与xrange()用法分析的详细内容
本文实例讲述了python中range()与xrange()用法。分享给大家供大家参考,具体如下:
据说range比xrange开销要大,原因是range会直接生成一个list对象,而xrange每次调用返回其中的一个值(参考:http://www.zzvips.com/article/50072.htm)。于是好奇做了个小小的测试,比较两个函数性能到底有多大差别。
(1)测试代码
? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17#!/usr/bin/env python
from
datetime
import
*
def
test_range():
c1
=
0
t1
=
datetime.now()
for
i
in
range
(
0
,
100000
):
c1
+
=
1
print
datetime.now()
-
t1
def
test_xrange():
c1
=
0
t1
=
datetime.now()
for
i
in
xrange
(
0
,
100000
):
c1
+
=
1
print
datetime.now()
-
t1
if
__name__
=
=
'__main__'
:
test_range()
test_xrange()
(2)运行结果
(3)小结
从上图的三次运行结果可以看出,range在相同计算量下用时比xrange多了70%左右。另外,在不同的计算量情况下,用时基本也维持在这个比例。因此,如果并不需要返回list对象的话,xrange会是个好选择。
希望本文所述对大家Python程序设计有所帮助。