我想捕獲並繪製5個左右的結果timeit
調用對數增加尺寸N以顯示methodX()
如何隨輸入縮放。你能捕獲ipython的魔法方法的輸出嗎? (timeit)
到目前爲止,我曾嘗試:
output = %timeit -r 10 results = methodX(N)
它不工作...
也無法找到的文檔信息。我覺得你應該至少可以攔截打印的字符串。之後,我可以解析它來提取我的信息。
有沒有人做過這個或試過?
PS:這是在ipython筆記本,如果這使差異。
我想捕獲並繪製5個左右的結果timeit
調用對數增加尺寸N以顯示methodX()
如何隨輸入縮放。你能捕獲ipython的魔法方法的輸出嗎? (timeit)
到目前爲止,我曾嘗試:
output = %timeit -r 10 results = methodX(N)
它不工作...
也無法找到的文檔信息。我覺得你應該至少可以攔截打印的字符串。之後,我可以解析它來提取我的信息。
有沒有人做過這個或試過?
PS:這是在ipython筆記本,如果這使差異。
這個重複的問題Capture the result of an IPython magic function有一個answer表明這已經被實現。
調用%timeit
魔術像-o
選項:
%timeit -o <statement>
返回TimeitResult
對象,它是與有關%timeit
運行作爲屬性的所有信息的簡單對象。例如:
In [1]: result = %timeit -o 1 + 2
Out[1]: 10000000 loops, best of 3: 23.2 ns per loop
In [2]: result.best
Out[2]: 2.3192405700683594e-08
這似乎只針對一些魔術命令(可能只是'%timeit'?)。它不適用於'%% timeit'。使用'result = %% timeit -o'作爲單元格的行返回'None'。 –
@ StevenC.Howell您可以使用'%% timeit -o'而無需分配。它會返回一個'TimeitResult'對象,並且感謝IPython的輸出捕獲,您可以通過訪問'_'來檢索結果。 – user2923419
PS:這是在一個ipython筆記本,如果這使差異。
不,它不。
On dev there is te %%capture
cell magic。 另一種方法是修改timeit magic來返回值而不是打印,或者使用timeit模塊本身。補丁歡迎。
的〔捕獲IPython的魔法函數的結果]可能重複(http://stackoverflow.com/questions/25289437/capture-the-result-of-an-ipython-magic-function ) – Iguananaut