python中的計(jì)時(shí)器timeit的使用方法
本文介紹了python中的計(jì)時(shí)器timeit的使用方法,分享給大家,具體如下:
timeit
通常在一段程序的前后都用上time.time(),然后進(jìn)行相減就可以得到一段程序的運(yùn)行時(shí)間,不過(guò)python提供了更強(qiáng)大的計(jì)時(shí)庫(kù):timeit
#導(dǎo)入timeit.timeit from timeit import timeit #看執(zhí)行1000000次x=1的時(shí)間: timeit('x=1') #看x=1的執(zhí)行時(shí)間,執(zhí)行1次(number可以省略,默認(rèn)值為1000000): timeit('x=1', number=1) #看一個(gè)列表生成器的執(zhí)行時(shí)間,執(zhí)行1次: timeit('[i for i in range(10000)]', number=1) #看一個(gè)列表生成器的執(zhí)行時(shí)間,執(zhí)行10000次: timeit('[i for i in range(100) if i%2==0]', number=10000)
測(cè)試一個(gè)函數(shù)的執(zhí)行時(shí)間:
from timeit import timeit def func(): s = 0 for i in range(1000): s += i print(s) # timeit(函數(shù)名_字符串,運(yùn)行環(huán)境_字符串,number=運(yùn)行次數(shù)) t = timeit('func()', 'from __main__ import func', number=1000) print(t)
此程序測(cè)試函數(shù)運(yùn)行1000次的執(zhí)行時(shí)間
repeat:
由于電腦永遠(yuǎn)都有其他程序也在占用著資源,你的程序不可能最高效的執(zhí)行。所以一般都會(huì)進(jìn)行多次試驗(yàn),取最少的執(zhí)行時(shí)間為真正的執(zhí)行時(shí)間。
from timeit import repeat def func(): s = 0 for i in range(1000): s += i #repeat和timeit用法相似,多了一個(gè)repeat參數(shù),表示重復(fù)測(cè)試的次數(shù)(可以不寫(xiě),默認(rèn)值為3.),返回值為一個(gè)時(shí)間的列表。 t = repeat('func()', 'from __main__ import func', number=100, repeat=5) print(t) print(min(t))
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Python機(jī)器學(xué)習(xí)NLP自然語(yǔ)言處理基本操作家暴歸類
本文是Python機(jī)器學(xué)習(xí)NLP自然語(yǔ)言處理系列文章,帶大家開(kāi)啟一段學(xué)習(xí)自然語(yǔ)言處理 (NLP) 的旅程。本篇文章主要學(xué)習(xí)NLP自然語(yǔ)言處理家暴歸類2021-09-09調(diào)試Python程序代碼的幾種方法總結(jié)
這篇文章主要介紹了調(diào)試Python程序代碼的幾種方法總結(jié),文中代碼基于Python2.x版本,需要的朋友可以參考下2015-04-04Python?數(shù)據(jù)類型中的字符串和數(shù)字
這篇文章主要介紹了Python?數(shù)據(jù)類型中的字符串和數(shù)字,Python3中有六個(gè)標(biāo)準(zhǔn)的數(shù)據(jù)類型,Number、String、List、Tuple、Set、Dictionary,加先來(lái)我們就來(lái)看看這幾種數(shù)據(jù)類型的具體相關(guān)介紹,需要的小伙伴可以參考一下2022-02-02基于循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)的古詩(shī)生成器
這篇文章主要為大家詳細(xì)介紹了基于循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)的古詩(shī)生成器,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-03-03Python?如何將?matplotlib?圖表集成進(jìn)到PDF?中
這篇文章主要介紹了Python?如何將?matplotlib?圖表集成進(jìn)到PDF?中,文章介紹內(nèi)容詳細(xì),具有一定的參考價(jià)值,需要的小伙伴可以參考一下,希望對(duì)你的學(xué)習(xí)有所幫助2022-03-03python實(shí)現(xiàn)凱撒密碼、凱撒加解密算法
這篇文章主要介紹了python語(yǔ)言編程實(shí)現(xiàn)凱撒密碼、凱撒加解密算法,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-06-06