簡體   English   中英

如何在 Python 腳本中將 cProfile.Profile() 的輸出保存到 *.prof 文件

[英]How to save output of cProfile.Profile() to a *.prof file in Python Script

嗨,我知道使用命令行方法來分析 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輸出cProfile.Profile()*.profile文件,而不是使用pstats.Stats()來分析和打印分析結果。 因此,我可以使用 SnakeViz 或類似實用程序來直觀地分析統計數據。

Profile 類具有將統計信息寫入文件的方法 您可以使用它來將輸出保存到文件中。

filename = 'profile.prof'  # You can change this if needed
pr.dump_stats(filename)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM