我熟悉%prun
IPython 中使用 Pythonprofile
模块的魔法命令。但是,我只想简要介绍我的代码。也就是说,我想看看我的 Python 代码中哪些是最慢的行,而不是深埋在我正在使用的某个外部包中的那些行,这些行经常被调用,因此似乎花费的时间最多。我怎样才能做到这一点?
问问题
269 次
2 回答
1
基于更多的谷歌搜索,这似乎line_profiler
是答案:https ://github.com/rkern/line_profiler
import line_profiler
%load_ext line_profiler
然后就
%lprun -f function_i_want_to_profile function_i_want_to_run()
于 2015-12-20T08:26:31.820 回答
1
虽然line_profiler
有效,但它增加了很多开销,你需要把它放在@profile
所有地方。
%prun
您可以以各种方式对输出进行排序。其中之一是按模块名称:
%prun -s module my_func()
因此,相应地选择您的文件名,例如以下划线开头,会将您的文件放在列表%prun
显示的开头。
于 2015-12-20T08:31:18.223 回答