Python: range()与xrange()区别

来源:互联网 发布:国际数据公司 收购 编辑:程序博客网 时间:2024/05/21 07:01

range()和xrange()都是Python提供的内建函数,他们的作用是在for循环中为迭代器提供一个循环的范围。

例如:

for i in range(len(list))

但是Python中还提供了xrange()内建函数,那么它与range()函数有什么区别呢?

当你有一个很大范围的列表时,使用xrange()函数更为合适,因它不会在内存中创建列表的完整拷贝,并且只能应用在for循环中在for循环之外就没有意义了

它的性能远高于range(),因为它不生成整个列表。

在MergeSort函数中我使用了xrange函数,令处理100w个随机数的效率提高了大约5%的性能。

0 0