通常在一段程式的前後都用上time.time(),然後進行相減就可以得到一段程式的執行時間,不過python提供了更強大的計時庫:timeit
#匯入timeit.timeit
from timeit import timeit
timeit('x=1')
#看x=1的執行時間,執行1次(number可以省略,預設值為1000000):
timeit('x=1', number=1)
#看乙個列表生成器的執行時間,執行1次:
timeit('[i for i in range(10000)]', number=1)
#看乙個列表生成器的執行時間,執行10000次:
timeit('[i for i in range(100) if i%2==0]', number=10000)
from timeit import timeit
def func():
s = 0
for i in range(1000):
s += i
print(s)
# timeit(函式名_字串,執行環境_字串,number=執行次數)
t = timeit('func()', 'from __main__ import func', number=1000)
print(t)
此程式測試函式執行1000次的執行時間
由於電腦永遠都有其他程式也在占用著資源,你的程式不可能最高效的執行。所以一般都會進行多次試驗,取最少的執行時間為真正的執行時間。
from timeit import repeat
def func():
s = 0
for i in range(1000):
s += i
#repeat和timeit用法相似,多了乙個repeat引數,表示重複測試的次數(可以不寫,預設值為3.),返回值為乙個時間的列表。
t = repeat('func()', 'from __main__ import func', number=100, repeat=5)
print(t)
print(min(t))
python計時器 python 計時器
import sysclassshowtime qwidget def init self super init self.istimestart false 標記時間是否開始計時 self.setwindowtitle qlable 顯示計時時間 self.lable time val qlabe...
python計時器單位 python計時器類
import time as t class mytimer def init self self.unit 年 月 日 時 分 秒 self.prompt 未開始計時 self.lasted self.start 0 self.stop 0 def str self return self.pro...
python中的計時器 timeit
timeit 匯入timeit.timeit from timeit import timeit timeit x 1 看x 1的執行時間,執行1次 number可以省略,預設值為1000000 timeit x 1 number 1 看乙個列表生成器的執行時間,執行1次 timeit i for ...