Python時間性能測量

主要有如下三種方式:性能

一,CPU時間

time.clock()this

測量CPU時間,比較精準,經過比較程序運行先後的CPU時間差,得出程序運行的CPU時間。spa

二, 時鐘時間

time.time()code

測量時鐘時間,也就是一般的相似掐表計時。blog

三,基準時間

timeit.timeit(stmt='pass', setup='pass', timer=<default timer>, number=1000000) get

簡短示例:it

timeit(「math.sqrt(2.0)」, 「import math」)class

timeit(「sqrt(2.0)」, 「from ,math import sqrt」)test

timeit(「test()」, 「from __main__ import test」, number = 10000)import

 

示例(示例中的三個方法都是求解一個數的因子數的個數)

CPU時間的示例:

Code1


 

結果:最快的是方法三,方法二和方法一,其實不相上下.

Result1


 

時鐘時間示例:

Code2


 

結果:

Result2


 

在精度不夠的狀況下,都沒法得知,方法三真正的運行時間.

 

真的想知道,方法三比方法一或者二快多少倍,仍是要使用timeit。timeit能夠重複執行代碼必定次數,這樣更加穩定的反應程序的執行時間,不會由於一次的執行而產生較大的偏差。

Code3


 

結果:

Result3


 

經過timeit能夠看出,方法二基本和方法一的性能是相同的。timeit返回是時鐘時間。方法二,基本是方法三耗時的130倍左右。

相關文章
相關標籤/搜索