时间python脚本使用IPython魔术

use*_*844 17 python profiling ipython ipython-magic

如何使用iPython%time或%% timeit magic命令计时执行Python脚本?例如,我有script.py,我想知道执行需要多长时间.细微差别:script.py需要输入参数.以下似乎不起作用.

%%time script.py input_param1 input_param2
Run Code Online (Sandbox Code Playgroud)

use*_*916 35

你可以使用:

%%timeit
%run script.py input_param1 input_param2
Run Code Online (Sandbox Code Playgroud)

请注意脚本将被执行多次(数字是自适应的).要仅执行一次(并且定时不太准确),请将第一行更改为

%%timeit -n1 -r1
Run Code Online (Sandbox Code Playgroud)

说明

所有以魔术命令开头的命令都%%适用于整个细胞.特别是%%timeit将计时单元格中的所有行.

IPython允许%在代码的任何一点使用魔术命令(单个)(即循环,if-then).这里我们只使用magic命令%run来运行脚本.

另请参阅:官方IPython文档中的魔术功能.