假如你觉得上两种工具太过于繁琐,可以直接使用vprof
vprof 是一个 Python 分析器,为各种 Python 程序特点提供了丰富的交互式可视化,比如运行时间和内存使用。这是一个图形化工具,基于 Node.JS,可在网页上展示结果。
- CPU flame graph
- 代码分析(code profiling)
- 内存图(memory graph)
- 代码热图(code heatmap)
pip install vprof(CPython2)/ pypy -m pip install vprof(PyPy)
执行
python -m vprof -H 200.200.200.11 -p 19099 -c h cprofile_test.py
之后再浏览器上打开
http://200.200.200.11:19099/
结果是以图形化的方式展示的,你可以将鼠标悬浮或点击每一行,从而查看更多信息。同样,我们可以看到有两个循环在反复调用 list.append 方法,占用了脚本的大部分时间。