擅长:python、mysql、java
<p>记住,使用<code>timeit</code>模块测试哪一小段代码更快!</p>
<pre><code>$ python -m timeit 'for i in range(1000000):' ' pass'
10 loops, best of 3: 90.5 msec per loop
$ python -m timeit 'for i in xrange(1000000):' ' pass'
10 loops, best of 3: 51.1 msec per loop
</code></pre>
<p>就我个人而言,我总是使用<code>.range()</code>,除非我处理的是真正的大型列表——从时间上看,对于一百万个条目的列表,额外的开销只有0.04秒。正如Corey所指出的,在Python 3.0中,<code>.xrange()</code>将消失,<code>.range()</code>无论如何都将为您提供良好的迭代器行为。</p>