我想得到的时间花在单元格执行除了原始的输出从单元格。
为此,我尝试了%%timeit -r1 -n1,但它没有公开在cell中定义的变量。
%%time适用于只包含1条语句的cell。
In[1]: %%time
1
CPU times: user 4 µs, sys: 0 ns, total: 4 µs
Wall time: 5.96 µs
Out[1]: 1
In[2]: %%time
# Notice there is no out result in this case.
x = 1
x
CPU times: user 3 µs, sys: 0 ns, total: 3 µs
Wall time: 5.96 µs
最好的方法是什么?
更新
我已经在nbeextension中使用执行时间相当长一段时间了。这是伟大的。
更新2021 - 03
到目前为止,这是正确的答案。从本质上讲,%%time和%%timeit现在都像预期的那样工作。
当使用print(res)时,有时单元格中的格式是不同的,但jupyter/ipython带有显示。请参阅下面使用pandas的格式差异示例。
%%time
import pandas as pd
from IPython.display import display
df = pd.DataFrame({"col0":{"a":0,"b":0}
,"col1":{"a":1,"b":1}
,"col2":{"a":2,"b":2}
})
#compare the following
print(df)
display(df)
display语句可以保留格式。
当使用print(res)时,有时单元格中的格式是不同的,但jupyter/ipython带有显示。请参阅下面使用pandas的格式差异示例。
%%time
import pandas as pd
from IPython.display import display
df = pd.DataFrame({"col0":{"a":0,"b":0}
,"col1":{"a":1,"b":1}
,"col2":{"a":2,"b":2}
})
#compare the following
print(df)
display(df)
display语句可以保留格式。