嗨,我知道使用命令行方法来分析python脚本,如下所示。
python -m cProfile -o program.prof my_program.py
然而,我正在使用cProfile模块在Python中分析特定的代码片段,如下所示。
import cProfile, pstats, io
pr = cProfile.Profile()
pr.enable()
# ... do something ...
pr.disable()
s = io.StringIO()
sortby = 'cumulative'
ps = pstats.Stats(pr, stream=s).sort_stats(sortby)
ps.print_stats()
print(s.getvalue())
pr
的{{1}}输出保存到cProfile.Profile()
文件,而不是使用*.profile
来分析和打印分析结果。因此,我可以使用它来使用SnakeViz或类似实用程序直观地分析统计数据。
答案 0 :(得分:0)
Profile类有a method to write the stats to a file。您可以使用它将输出保存到文件中。
filename = 'profile.prof' # You can change this if needed
pr.dump_stats(filename)