我這個使用timeit掙扎,並想知道如果任何人有,我想測試的速度任何提示如何在將變量傳遞給函數時使用python timeit?
基本上我有一個函數(即我傳遞一個值),並創造了這個:
if __name__=='__main__':
from timeit import Timer
t = Timer(superMegaIntenseFunction(10))
print t.timeit(number=1)
但是當我運行它,我得到奇怪的錯誤像timeit模塊來:
ValueError: stmt is neither a string nor callable
如果我對自己的運行功能,它工作正常。它的時候,我包裝它的時候它模塊,我得到的錯誤(我試過使用雙引號,沒有..sameoutput)。
任何建議都會很棒!
謝謝!
工作正常!非常感謝。我需要弄清楚什麼是lambda ..看起來像是有所作爲。謝謝Pablo – Lostsoul
如果只有這個在文檔 – endolith
哦,但lambda增加了一些開銷,所以不適合測試小的東西。 'timeit 5 * 5'爲33 ns,而'timeit(lambda:5 * 5)()'爲233 ns。 – endolith