在Python 3中設定Jupyter Notebook
阿新 • • 發佈:2019-02-12
介紹
Jupyter Notebook提供了一個用於作為Web應用程式的互動式計算的命令shell。該工具可以與多種語言一起使用,包括Python,Julia,R,Haskell和Ruby。它通常用於處理資料,統計建模和機器學習。 本教程將引導您設定Jupyter Notebook以在本地或從Ubuntu 16.04伺服器執行,以及教您如何連線和使用筆記本。 Jupyter筆記本(或簡稱筆記本)是由Jupyter Notebook應用程式生成的文件,包含計算機程式碼和豐富的文字元素(段落,方程,數字,連結等),有助於呈現和共享可再現的研究。 在本指南結束時,您將能夠使用執行在本地機器或遠端伺服器上的Jupyter Notebook執行Python 3程式碼。先決條件
要遵循本教程,您將需要一個Python 3程式設計環境本教程中的所有命令都應以非root使用者身份執行。 如果命令需要root訪問許可權,則它之前將是sudo
。 使用Ubuntu 16.04的初始伺服器設定說明如何新增使用者並授予其sudo訪問許可權。第1步 - 安裝Jupyter Notebook
使用以下命令安裝Jupyter Notebook:
pip install jupyter
此時Jupyter Notebook被安裝到當前的程式設計環境中。 下一個可選步驟是使用SSH隧道連線Web介面的伺服器安裝的步驟。
第2步(可選) - 使用SSH隧道連線到伺服器安裝
如果您在伺服器上安裝Jupyter Notebook,在本節中,我們將瞭解如何使用SSH隧道連線到Jupyter Notebook Web介面。由於Jupyter Notebook將在伺服器上的特定埠(例如:8888
, :8889
等)上執行,因此通過SSH隧道可以安全地連線到伺服器的埠。 接下來的兩個小節描述如何建立SSH隧道從1)Mac或Linux和2)Windows。請參閱本地計算機的子部分。SSH使用Mac或Linux進行隧道傳輸
如果您使用Mac或Linux,建立SSH隧道的步驟類似於如何使用Linux或Mac的DigitalOcean Droplet如何使用SSH金鑰指南,除了在ssh
命令中添加了其他引數。 本小節將概述ssh
命令成功隧道所需的附加引數。 SSH隧道可以通過在新的本地終端視窗中執行以下SSH命令來完成:ssh -L 8888:localhost:8888your_server_username @your_server_ip
ssh
命令開啟SSH連線,但-L
指定本地(客戶端)主機上的給定埠將轉發到遠端端(伺服器)上的給定主機和埠。 這意味著伺服器上第二個埠號(例如8888
)上執行的任何內容都將顯示在本地計算機的第一個埠號(例如8888
)上。 可選擇將埠8888
更改為您選擇的埠之一,以避免使用已由另一程序使用的埠。server_username
是您建立的伺服器上的使用者名稱(例如sammy ),而your_server_ip
是伺服器的IP地址。 例如,對於使用者名稱sammy
和伺服器地址203.0.113.0
,命令將是:ssh -L 8888:localhost:8888sammy@203.0.113.0
如果在執行ssh -L
命令後沒有顯示錯誤,您可以進入程式設計環境並執行Jupyter Notebook:jupyter notebook
您將收到帶有URL的輸出。從本地計算機上的Web瀏覽器中,使用以http://localhost:8888
開頭的URL開啟Jupyter Notebook Web介面。 確保包含令牌編號,或者在http://localhost:8888
處提示時輸入令牌編號字串。
第3步 - 執行Jupyter Notebook
安裝Jupyter Notebook後,您可以在終端中執行它。為此,請執行以下命令:jupyter notebook
Jupyter Notebook的活動日誌將列印到終端。當您執行Jupyter Notebook時,它會在特定的埠號上執行。您執行的第一個筆記本計算機通常在埠8888
上執行。要檢查Jupyter Notebook正在執行的特定埠號,請參閱用於啟動它的命令的輸出:Output[I NotebookApp]Serving notebooks fromlocal directory:/home/sammy[I NotebookApp]0 active kernels
[I NotebookApp]TheJupyterNotebookis running at: http://localhost:8888/[I NotebookApp]UseControl-C to stop this server and shut down all kernels (twice to skip confirmation)....
如果啟動過程中出現如下所示,則預設為在8889埠上執行。
[I 14:31:24.987 NotebookApp] The port 8888 is already in use, trying another port.
Known labextensions:
[I 14:31:25.025 NotebookApp] Running the core application with no additional extensions or settings
[I 14:31:25.028 NotebookApp] 0 active kernels
[I 14:31:25.028 NotebookApp] The Jupyter Notebook is running at: http://localhost:8889/
[I 14:31:25.028 NotebookApp] Use Control-C to stop this server and shut down all kernels (twice to skip confirmation).
如果您在本地計算機(而不是伺服器)上執行Jupyter Notebook,您的預設瀏覽器應已開啟Jupyter Notebook web應用程式。如果沒有,或者如果關閉視窗,您可以導航到輸出中提供的URL,或導航到localhost :8888
進行連線。 每當你想停止Jupyter Notebook程序時,按CTRL+C
,出現提示時鍵入Y
,然後ENTER
確認。 您將收到以下輸出:
Output[C 12:32:23.792NotebookApp]Shutdown confirmed
[I 12:32:23.794NotebookApp]Shutting down kernels
Jupyter Notebook現在不再執行。
第4步 - 使用Jupyter Notebook
本節討論使用Jupyter Notebook的基礎知識。如果您當前沒有執行Jupyter Notebook,請使用jupyter notebook
命令啟動它。 您現在應該使用網路瀏覽器連線到它。 Jupyter筆記本是非常強大,有很多功能。本節將概述幾個基本功能,讓您開始使用筆記本。 Jupyter Notebook將顯示它執行的目錄中的所有檔案和資料夾,所以當你在一個專案上工作時,確保從專案目錄中啟動它。 要建立新的筆記本檔案,請從右上角的下拉選單中選擇新建 > Python 3 :這將開啟一個筆記本。我們現在可以在單元格中執行Python程式碼或將單元格更改為markdown。例如,通過從頂部導航欄中單擊“ 單元格” >“ 單元格型別” >“ Markdown” ,將第一個單元格更改為接受Markdown。 我們現在可以使用Markdown寫筆記,甚至包括用LaTeX寫的方程,把它們放在$$
符號之間。例如,在將其更改為markdown後,在單元格中鍵入以下內容:# Simple EquationLet us now implement the following equation:
$$ y = x^2$$
where $x =2$
要將markdown轉換為富文字格式,請按CTRL+ENTER
,以下應為結果:您可以使用markdown單元格來記錄和記錄您的程式碼。讓我們實現那個簡單的方程並列印結果。單擊頂部單元格,然後按ALT+ENTER
在其下新增一個單元格。在新單元格中輸入以下程式碼。x =2
y = x**2print(y)
要執行程式碼,請按CTRL+ENTER
。您將收到以下結果:您現在可以匯入模組並使用膝上型電腦,就像使用任何其他Python開發環境一樣!