∈鱼杆 ---我的鱼塘

执着,坚定,友爱,勇敢(www.pumaboyd.com)Live Message

导航

Python性能测试工具

Posted on 2009-01-14 14:11  ∈鱼杆  阅读(1045)  评论(0编辑  收藏  举报

有段时间没写Python了,业余时间都研究.NET和帮朋友处理一些问题。就这样Python将近两个月没碰了。(*^__^*),这篇文章也是为.NET而写的,作个内链。顺便记录一下。
Python 社区有句俗语:“Python 自己带着电池。” 别自己写计时框架。Python 2.3以后 、具备一个叫做 timeit 的完美计时工具。DiveInto中的例子

>>> import timeit
>>> t = timeit.Timer("soundex.soundex('Pilgrim')",
...     "import soundex")   
>>> t.timeit()              
8.21683733547
>>> t.repeat(3, 2000000)    
[16.48319309109, 16.46128984923, 16.44203948912]

这个方法有局限性,有时候我只是要统计方法中某一段的计时。这个时候用time.clock会更加方便。类似.NET中的stopwatch

import time
n = 100000
st = time.clock()
v = ('abcd',100,1.0, ['pumaboyd',100,None])
for i in xrange(n):
    exec(dumps(v))
print 'pickle usage', time.clock() - st