首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法获取pstats的输出

无法获取pstats的输出
EN

Stack Overflow用户
提问于 2018-01-11 14:36:43
回答 1查看 303关注 0票数 1

我正在尝试使用来自https://docs.python.org/2/library/profile.html#module-cProfilecProfile

我可以打印数据,但我希望能够处理数据并进行排序,这样我就可以获得我想要的信息。要获得要打印的数据,我使用:

代码语言:javascript
复制
b = cProfile.run("function_name")

但在运行和打印之后,b = None和我找不到它打印的数据在哪里,以便我可以操作数据。当然,我可以看到数据,但为了分析数据,我需要能够在我的IED编辑器中获得某种输出。我尝试过pstats,但收到了错误消息。似乎要使用pstats,我必须保存某种类型的文件,但我不知道如何运行程序并将其保存到文件中。

更新:

我几乎有了一个解决方案

代码语言:javascript
复制
cProfile.run('re.compile("foo|bar")', 'restats')

还有第二个参数,您可以将文件保存为'restats‘。现在我应该能够打开它并阅读它了。

已解决:

代码语言:javascript
复制
cProfile.run("get_result()", 'data_stats')
p = pstats.Stats('data_stats')
p.strip_dirs().sort_stats(-1).print_stats()
p.sort_stats('name')
EN

回答 1

Stack Overflow用户

发布于 2018-01-11 16:26:12

代码语言:javascript
复制
cProfile.run("get_result()", 'data_stats')
p = pstats.Stats('data_stats')
p.strip_dirs().sort_stats(-1).print_stats()
p.sort_stats('name')

除了运行代码的第一个参数之外,第二个参数实际上将输出保存到一个文件中。然后,下一行将打开该文件。打开该文件后,您应该能够在IED编辑器中看到p的值,并能够使用普通的python操作来操作它。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48201102

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档