Python性能分析——cProfile 2016-05-24 03:12:33 cProfile是python内置的模块,是比较常用的性能分析工具,可以非常方便的辅助我们找出程序的性能瓶颈,类似的内置工具还有profile,hotshot,使用方法和cProfile类似。本文重点介绍cProfile几种常用的分析方法。 直接针对一个文件进行分析: `python -m cProfile test.py`,-m表示运行一个模块,这里直接运行了cProfile模块,对test.py进行性能分析,分析结果直接输出到控制台中,还可以通过-o参数将结果输出到指定文件中。 很多情况下,我们可能需要对一块具体的代码进行分析,可以这么做: ```python # 在代码中嵌入cProfile模块相关分析代码 from cProfile import Profile p = Profile() p.enable() # your code ... p.disable() p.print_stats() ``` 分析结果: ``` 1866 function calls (1862 primitive calls) in 0.286 seconds Ordered by: standard name ncalls tottime percall cumtime percall filename:lineno(function) 9 0.000 0.000 0.000 0.000 <string>:8(__new__) 11 0.000 0.000 0.001 0.000 Queue.py:107(put) 12 0.000 0.000 0.000 0.000 Queue.py:150(get) ``` 其中 ``` ncalls:表示调用次数 tottime:表示不包括子函数调用的总耗时 cumtime:是包含子函数的调用耗时 ``` 非特殊说明,均为原创,原创文章,未经允许谢绝转载。 原始链接:Python性能分析——cProfile 赏 Prev Mac/Linux下管理多个版本的jdk Next 对招聘及面试的一些新感悟