本文實例講述了python中range()與xrange()用法。分享給大家供大家參考,具體如下:
據(jù)說range比xrange開銷要大,原因是range會直接生成一個list對象,而xrange每次調(diào)用返回其中的一個值(參考:http://www.jfrwli.cn/article/50072.htm)。于是好奇做了個小小的測試,比較兩個函數(shù)性能到底有多大差別。
(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)運行結(jié)果
(3)小結(jié)
從上圖的三次運行結(jié)果可以看出,range在相同計算量下用時比xrange多了70%左右。另外,在不同的計算量情況下,用時基本也維持在這個比例。因此,如果并不需要返回list對象的話,xrange會是個好選擇。
希望本文所述對大家Python程序設(shè)計有所幫助。