本文實(shí)例講述了Python中統(tǒng)計(jì)函數(shù)運(yùn)行耗時(shí)的方法。分享給大家供大家參考。具體實(shí)現(xiàn)方法如下:
import timedef time_me(fn): def _wrapper(*args, **kwargs): start = time.clock() fn(*args, **kwargs) print "%s cost %s second"%(fn.__name__, time.clock() - start) return _wrapper#這個(gè)裝飾器可以在方便地統(tǒng)計(jì)函數(shù)運(yùn)行的耗時(shí)。#用來(lái)分析腳本的性能是最好不過(guò)了。#這樣用:@time_medef test(x, y): time.sleep(0.1)@time_medef test2(x): time.sleep(0.2)test(1, 2)test2(2)#輸出:#test cost 0.1001529524 second#test2 cost 0.199968431742 second
另一個(gè)更高級(jí)一點(diǎn)的版本是:
import timeimport functoolsdef time_me(info="used"): def _time_me(fn): @functools.wraps(fn) def _wrapper(*args, **kwargs): start = time.clock() fn(*args, **kwargs) print "%s %s %s"%(fn.__name__, info, time.clock() - start), "second" return _wrapper return _time_me@time_me()def test(x, y): time.sleep(0.1)@time_me("cost")def test2(x): time.sleep(0.2)test(1, 2)test2(2)
希望本文所述對(duì)大家的Python程序設(shè)計(jì)有所幫助。
新聞熱點(diǎn)
疑難解答
圖片精選