Python分析:在每行函数上花费的时间

时间:2014-12-17 12:13:01

标签: python numpy workflow profile

我一直在研究profile documentation 的例子,当我跑

时,我已进入工作流程
import cProfile as profile
import pstats

pr = profile.Profile()
pr.runcall(myFunc, args, kwargs)

st = pstats.Stats(pr)
st.print_stats() # and other methods like print_callees, print_callers, etc.

这给了我一些关于调用次数等的一般统计数据。请注意,这是相当神秘的:我在numpy内使用myFunc(如numpy.sum*等),但我无法在stats对象中找到这些调用。我希望看到的是在函数myFunc的源代码的每一行上花费的时间。我该怎么做?

1 个答案:

答案 0 :(得分:3)

在PyPI上有一个很好的包 - line_profiler