python中的計時器timeit的使用方法
本文介紹了python中的計時器timeit的使用方法,分享給大家,具體如下:
timeit
通常在一段程序的前后都用上time.time(),然后進(jìn)行相減就可以得到一段程序的運(yùn)行時間,不過python提供了更強(qiáng)大的計時庫:timeit
#導(dǎo)入timeit.timeit
from timeit import timeit
#看執(zhí)行1000000次x=1的時間:
timeit('x=1')
#看x=1的執(zhí)行時間,執(zhí)行1次(number可以省略,默認(rèn)值為1000000):
timeit('x=1', number=1)
#看一個列表生成器的執(zhí)行時間,執(zhí)行1次:
timeit('[i for i in range(10000)]', number=1)
#看一個列表生成器的執(zhí)行時間,執(zhí)行10000次:
timeit('[i for i in range(100) if i%2==0]', number=10000)
測試一個函數(shù)的執(zhí)行時間:
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)
此程序測試函數(shù)運(yùn)行1000次的執(zhí)行時間
repeat:
由于電腦永遠(yuǎn)都有其他程序也在占用著資源,你的程序不可能最高效的執(zhí)行。所以一般都會進(jìn)行多次試驗,取最少的執(zhí)行時間為真正的執(zhí)行時間。
from timeit import repeat
def func():
s = 0
for i in range(1000):
s += i
#repeat和timeit用法相似,多了一個repeat參數(shù),表示重復(fù)測試的次數(shù)(可以不寫,默認(rèn)值為3.),返回值為一個時間的列表。
t = repeat('func()', 'from __main__ import func', number=100, repeat=5)
print(t)
print(min(t))
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
利用Python?Matplotlib繪圖并輸出圖像到文件中的方式
這篇文章主要介紹了利用Python?Matplotlib繪圖并輸出圖像到文件中的方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2023-09-09
Python常用base64 md5 aes des crc32加密解密方法匯總
這篇文章主要介紹了Python常用base64 md5 aes des crc32加密解密方法匯總,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2020-11-11
Python實現(xiàn)的本地文件搜索功能示例【測試可用】
這篇文章主要介紹了Python實現(xiàn)的本地文件搜索功能,涉及Python針對文件與目錄的遍歷、判斷、編碼轉(zhuǎn)換、查找等相關(guān)操作技巧,需要的朋友可以參考下2018-05-05

