當我打開一個保存的IPython Notebook時,我需要評估所有具有導入,函數定義等的單元以繼續處理會話。點擊Cell > Run All
來做到這一點很方便。但是如果我不想重新評估所有計算?每次需要手動挑選細胞進行評估嗎?IPython Notebook是否有「初始化單元」?
對於這個問題,數學有「初始細胞」的概念。您可以將筆記本中的某些單元標記爲初始化單元,然後在打開筆記本後執行「評估初始化單元」。
是否IPython的筆記本電腦有一個類似的解決方案?
當我打開一個保存的IPython Notebook時,我需要評估所有具有導入,函數定義等的單元以繼續處理會話。點擊Cell > Run All
來做到這一點很方便。但是如果我不想重新評估所有計算?每次需要手動挑選細胞進行評估嗎?IPython Notebook是否有「初始化單元」?
對於這個問題,數學有「初始細胞」的概念。您可以將筆記本中的某些單元標記爲初始化單元,然後在打開筆記本後執行「評估初始化單元」。
是否IPython的筆記本電腦有一個類似的解決方案?
首先,當您打開IPython筆記本時,這並不意味着內核狀態丟失,除非您重新啓動服務器或顯式停止內核。
否則,沒有標記爲單元格,但在dev版本中有一個「運行到此處」。
此外,如果你使用的是開發版本,使用Cell工具欄/元,我想說〜30行的JavaScript的應該是可行的。
我建議你打開主要問題跟蹤改進請求。這通常可以在sprint和/或博客文章中作爲擴展來解釋筆記本的內部。
所以最後,答案是IPython Notebook沒有初始化單元格或其他等價物。希望這會在未來的版本中出現。 – clstaudt 2013-02-19 13:49:19
我已經安裝了[筆記本擴展](https://github.com/ipython-contrib/IPython-notebook-extensions.git),並且「初始化單元」是唯一一個一星期後,我仍然被激活的單元。 ..是否有機會在下一個版本的jupyter中升級到某個功能? – gboffi 2016-06-27 12:34:03
不,這個擴展不可能成爲核心的一部分。 – Matt 2016-06-27 15:51:21
如果您正在使用筆記本電腦的最新和最偉大的(我的是> 4.1),您所要求的功能可通過擴展。
的擴展,以及可方便地用於啓用/禁用每個單獨的擴展接口,可以安裝如下
$ git clone https://github.com/ipython-contrib/IPython-notebook-extensions.git
$ cd IPython-notebook-extensions
$ ./setup.py
如果你已經安裝了擴展,啓動筆記本電腦服務器
$ cd ; jupyter-notebook </dev/null> .jupiter.log 2>&1 &
,去擴展管理頁面
$ xdg-open http://localhost:8888/nbextensions
在最近打開的瀏覽器窗口中,啓用「初始化單元」擴展。
如果你現在打開你的筆記本,在工具欄中你會看到一個新的圖標,類似於一個手持計算器,並在View/Cell Toolbar
一個新條目Initialisation Cell
。
啓用該菜單項和細胞上點擊工具欄,你要標記爲初始化細胞(可能去除細胞哪些工具欄),然後點擊前面所述的圖標...
當加載筆記本,初始化細胞自動運行,因此,如果你願意,你可以將它們放置在方便的地方,說筆記本的最後,如果你像我一樣...
最終,在回答這個問題,一個已編寫IPython Notebook擴展以提供初始化單元功能:http://nbviewer.ipython.org/github/Carreau/posts/blob/master/04-initialisation-cell.ipynb – rerx 2015-08-11 12:17:23
@rerx您是否可以讓您的評論爲nswer?我幾乎錯過了這個擴展,因爲我起初沒有注意到你的評論。 – cledoux 2015-11-09 18:40:20