python中range()與xrange()用法分析
本文實例講述了python中range()與xrange()用法。分享給大家供大家參考,具體如下:
據(jù)說range比xrange開銷要大,原因是range會直接生成一個list對象,而xrange每次調(diào)用返回其中的一個值(參考:http://chabaoo.cn/article/50072.htm)。于是好奇做了個小小的測試,比較兩個函數(shù)性能到底有多大差別。
(1)測試代碼
#!/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)運(yùn)行結(jié)果

(3)小結(jié)
從上圖的三次運(yùn)行結(jié)果可以看出,range在相同計算量下用時比xrange多了70%左右。另外,在不同的計算量情況下,用時基本也維持在這個比例。因此,如果并不需要返回list對象的話,xrange會是個好選擇。
更多關(guān)于Python相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Python文件與目錄操作技巧匯總》、《Python文本文件操作技巧匯總》、《Python URL操作技巧總結(jié)》、《Python圖片操作技巧總結(jié)》、《Python數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Python Socket編程技巧總結(jié)》、《Python函數(shù)使用技巧總結(jié)》、《Python字符串操作技巧匯總》及《Python入門與進(jìn)階經(jīng)典教程》
希望本文所述對大家Python程序設(shè)計有所幫助。
相關(guān)文章
python中的tkinter庫彈窗messagebox詳解
這篇文章主要介紹了python中的tkinter庫彈窗messagebox,包括消息提示框、消息警告框、錯誤消息框,通過代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下2021-06-06
詳解設(shè)計模式中的工廠方法模式在Python程序中的運(yùn)用
這篇文章主要介紹了設(shè)計模式中的工廠方法模式在Python程序中的運(yùn)用,工廠方法模式主張程序在設(shè)計時要可以根據(jù)不同的條件生成各種類的實例,需要的朋友可以參考下2016-03-03
利用Python進(jìn)行微服務(wù)架構(gòu)的監(jiān)控與日志分析
Python作為一種強(qiáng)大的編程語言,提供了豐富的工具和庫,可以幫助我們實現(xiàn)對微服務(wù)架構(gòu)的監(jiān)控和日志分析,本文將介紹如何利用Python編寫監(jiān)控腳本和日志分析程序,以便于更好地管理和維護(hù)微服務(wù)系統(tǒng)2024-03-03
Python Pygame實戰(zhàn)之塔防游戲的實現(xiàn)
這篇文章主要介紹了如何利用Python中的Pygame模塊制作簡單的塔防小游戲,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起動手試一試2022-03-03
PyCharm安裝庫numpy失敗問題的詳細(xì)解決方法
今天使用pycharm編譯python程序時,由于要調(diào)用numpy包,但又未曾安裝numpy,于是就根據(jù)pycharm的提示進(jìn)行安裝,最后竟然提示出錯,下面這篇文章主要給大家介紹了關(guān)于PyCharm安裝庫numpy失敗問題的詳細(xì)解決方法,需要的朋友可以參考下2022-06-06

