我希望捕获并绘制5个左右timeit调用的结果,并以对数增加N的大小来显示methodX()带有输入的比例.
到目前为止,我尝试过:
output = %timeit -r 10 results = methodX(N)
Run Code Online (Sandbox Code Playgroud)
这是行不通的...
无法在文档中找到信息.我觉得你应该能够至少拦截打印的字符串.之后,我可以解析它以提取我的信息.
有没有人这样做或尝试过?
PS:这是一个ipython笔记本,如果这是一个差异.
我正在尝试捕获IPython Notebook魔术函数的结果对象.特别%timeit
所以下面的代码......
import time
def say_hello(n):
time.sleep(n)
print "hello"
t = %timeit say_hello(5)
Run Code Online (Sandbox Code Playgroud)
打印到stdout:
1 loops, best of 3: 5 s per loop
Run Code Online (Sandbox Code Playgroud)
但是,我想捕获%timeit say_hello(5)变量的结果t.
调用TimeitResult生成的对象是由生成的%timeit,但我无法弄清楚如何从Notebook中访问它.
我想要一个更清洁的解决方案,而不是使用sys.stdout技巧手动捕获stdout (此代码将是演示文稿的一部分,所以我试图尽可能地保持它直接).有人有主意吗?
我想知道在 Jupyter 中工作的单元的 CPU 时间。我把 %%time 放在单元格的顶部。它打印出墙上时间。但我无法将此时间值存储在变量中?
你能帮我一下吗?
谢谢。