一、什么是Jupyter Notebook?
1. 簡介
Jupyter Notebook是基於網頁的用於交互計算的應用程序。其可被應用於全過程計算:開發、文檔編寫、運行代碼和展示結果。——Jupyter Notebook官方介紹
簡而言之,Jupyter Notebook是以網頁的形式打開,可以在網頁頁面中直接編寫代碼和運行代碼,代碼的運行結果也會直接在代碼塊下顯示。如在編程過程中需要編寫說明文檔,可在同一個頁面中直接編寫,便於作及時的說明和解釋。
2. 組成部分
(1) 網頁應用
網頁應用即基於網頁形式的、結合了編寫說明文檔、數學公式、交互計算和其他富媒體形式的工具。簡言之,網頁應用是可以實現各種功能的工具。
(2) 文檔
即Jupyter Notebook中所有交互計算、編寫說明文檔、數學公式、圖片以及其他富媒體形式的輸入和輸出,都是以文檔的形式體現的。
3. Jupyter Notebook的主要特點
-
編程時具有語法高亮、縮進、tab補全的功能。
-
可直接通過瀏覽器運行代碼,同時在代碼塊下方展示運行結果。
-
對代碼編寫說明文檔或語句時,支持Markdown語法。
二、安裝Jupyter Notebook
1. 安裝
(1) 安裝前提
安裝Jupyter Notebook的前提是需要安裝了Python(3.3版本及以上,或2.7版本)。
(2) 使用Anaconda安裝
如果你是小白,那么建議你通過安裝Anaconda來解決Jupyter Notebook的安裝問題,因為Anaconda已經自動為你安裝了Jupter Notebook及其他工具,還有python中超過180個科學包及其依賴項。
你可以通過進入Anaconda的官方下載頁面自行選擇下載;如果你對閱讀英文文檔感到頭痛,或者對安裝步驟一無所知,甚至也想快速了解一下什么是Anaconda,那么可以前往我的另一篇文章Anaconda介紹、安裝及使用教程。你想要的,都在里面!
常規來說,安裝了Anaconda發行版時已經自動為你安裝了Jupyter Notebook的,但如果沒有自動安裝,那么就在終端(Linux或macOS的“終端”,Windows的“Anaconda Prompt”,以下均簡稱“終端”)中輸入以下命令安裝:
conda install jupyter notebook
(3) 使用pip命令安裝
如果你是有經驗的Python玩家,想要嘗試用pip命令來安裝Jupyter Notebook,那么請看以下步驟吧!接下來的命令都輸入在終端當中的噢!
-
把pip升級到最新版本
- Python 3.x
pip3 install --upgrade pip
- Python 2.x
pip install --upgrade pip
- Python 3.x
- 注意:老版本的pip在安裝Jupyter Notebook過程中或面臨依賴項無法同步安裝的問題。因此強烈建議先把pip升級到最新版本。
-
安裝Jupyter Notebook
- Python 3.x
pip3 install jupyter
- Python 2.x
pip install jupyter
- Python 3.x
三、運行Jupyter Notebook
0. 幫助
如果你有任何jupyter notebook命令的疑問,可以考慮查看官方幫助文檔,命令如下:
jupyter notebook --help
或
jupyter notebook -h
1. 啟動
(1) 默認端口啟動
在終端中輸入以下命令:
jupyter notebook
執行命令之后,在終端中將會顯示一系列notebook的服務器信息,同時瀏覽器將會自動啟動Jupyter Notebook。
啟動過程中終端顯示內容如下:
$ jupyter notebook [I 08:58:24.417 NotebookApp] Serving notebooks from local directory: /Users/catherine [I 08:58:24.417 NotebookApp] 0 active kernels [I 08:58:24.417 NotebookApp] The Jupyter Notebook is running at: http://localhost:8888/ [I 08:58:24.417 NotebookApp] Use Control-C to stop this server and shut down all kernels (twice to skip confirmation).
- 注意:之后在Jupyter Notebook的所有操作,都請保持終端不要關閉,因為一旦關閉終端,就會斷開與本地服務器的鏈接,你將無法在Jupyter Notebook中進行其他操作啦。
瀏覽器地址欄中默認地將會顯示:http://localhost:8888
。其中,“localhost”指的是本機,“8888”則是端口號。
URL
如果你同時啟動了多個Jupyter Notebook,由於默認端口“8888”被占用,因此地址欄中的數字將從“8888”起,每多啟動一個Jupyter Notebook數字就加1,如“8889”、“8890”……
(2) 指定端口啟動
如果你想自定義端口號來啟動Jupyter Notebook,可以在終端中輸入以下命令:
jupyter notebook --port <port_number>
其中,“<port_number>”是自定義端口號,直接以數字的形式寫在命令當中,數字兩邊不加尖括號“<>”。如:jupyter notebook --port 9999
,即在端口號為“9999”的服務器啟動Jupyter Notebook。
(3) 啟動服務器但不打開瀏覽器
如果你只是想啟動Jupyter Notebook的服務器但不打算立刻進入到主頁面,那么就無需立刻啟動瀏覽器。在終端中輸入:
jupyter notebook --no-browser
此時,將會在終端顯示啟動的服務器信息,並在服務器啟動之后,顯示出打開瀏覽器頁面的鏈接。當你需要啟動瀏覽器頁面時,只需要復制鏈接,並粘貼在瀏覽器的地址欄中,輕按回車變轉到了你的Jupyter Notebook頁面。
例圖中由於在完成上面內容時我同時啟動了多個Jupyter Notebook,因此顯示我的“8888”端口號被占用,最終分配給我的是“8889”。
2. 快捷鍵
- 向上插入一個cell:a
- 向下插入一個cell:b
- 刪除cell:x
- 將code切換成markdown:m
- 將markdown切換成code:y
- 運行cell:shift+enter
- 查看幫助文檔:shift+tab
- 自動提示:tab
3. 魔法指令
- 運行外部python源文件:%run xxx.py
- 計算statement的運行時間:%time statement
- 計算statement的平均運行時間:%timeit statement
- 測試多行代碼的平均運行時間:
%%timeit
statement1
statement2
statement3