Python的編輯工具-Jupyter notebook實戰案例
作者:尹正傑
版權聲明:原創作品,謝絕轉載!否則将追究法律責任。
一.安裝Jupyter
1>.jupyter notebook概述
我們知道Python是有互動式指令行的,但其功能相對較弱,是以有人開發了ipython,它對Python解釋器進行了封裝,使得互動式界面更友好。但ipython和原生Python解釋器一樣,均無法儲存之前寫過的代碼,一般用于測試代碼。
而今天我們介紹等等jupyter notebook它底層就是用的ipython進行互動的,而且我們寫的代碼是可以以檔案形式儲存的。jupyter Notebook是網頁版互動式代碼筆記工具,它是一款程式員和科學工作者的程式設計/文檔/筆記展示軟體。
jupyter Notebook是一個采用C/S架構的網站,通過Tornado建立WEB伺服器端,使用浏覽器作為用戶端。其互動式的程式設計環境,友好的界面,便于分享的文檔格式,對排版文法,繪圖,數學公式的支援,使它成為最流行的Python科學計算工具。
毫不客氣的說:jupyter notebook = Python + MaTLAB + Word + Excel + PowerPoint
使用場景:程式設計(探索,學習,資料方向),文檔,筆記,教學,演講,資料分析報告等等。
溫馨提示:
以"!","%","_"等特殊符号開頭的指令,叫魔術(magic)指令,用于加強IPython shell功能。需要注意的是,魔術指令後面不能帶有Python注釋,否則會報錯喲~
不能在除IPython以外的Python環境執行:
(1)"!":
執行shell指令,在指令前面加"!",如"!conda env list"。
(2)"%":
以"%"開頭的為行指令,隻對指令所在的行有效。
(3)"%%":
以"%%"開頭的為單元指令,單元指令必須出現在單元第一行,對整個單元都有效。
(4)"_":
儲存上一次執行的結果。
2>.安裝jupyter
C:\Users\yinzhengjie>pip install jupyter #需要注意的是,當我們安裝jupyter時可以不提前安裝ipthon,因為在安裝jupyter時會自動檢測目前Python環境是否有ipython環境,若沒有回自動安裝。
3>.啟動jupyter的筆記本(notebook)功能
C:\Users\yinzhengjie>jupyter notebook #執行該指令後會自動幫咱們打開一個網頁,如下圖所示。接下來我們就可以寫我們的Python代碼了(需要注意的是,你在哪個目錄啟動notebook,那麼該目錄就是其對應的家目錄喲~)
溫馨提示:
也可以直接在指令行敲擊"jupyter notebook"啟用其功能,用法基本上一緻。終止程式也隻需按"Ctrl + c"即可。

4>.使用jupyter的notebook時指定根目錄
D:\>jupyter notebook --notebook-dir D:\yinzhengjie\python #指定根目錄為"D:\yinzhengjie\python"
5>.檢視jupyter指令的幫助資訊
C:\Users\yinzhengjie>jupyter -h
6>.檢視"jupyter notebook"子指令的幫助資訊
C:\Users\yinzhengjie>jupyter notebook -h
二.jupyter notebook網頁的常見操作
1>.清單頁操作
所謂的清單頁其實就是我們剛剛啟用Jupyter Notebook服務時自動打開的浏覽器頁面,如下圖所示。
清單頁有以下常見操作:
(1)建立jupyter檔案:
點選"Files" => 點選"New" => 選擇要建立的檔案類型(比如你可以選擇"Python 3","Text File","Terminal"等)
(2)檔案的上傳
點選"Files" => 點選"Upload" => 點選"上傳",即可上傳成功。
(3)檔案或目錄的重命名操作
點選"Files" => 勾選對應的檔案或目錄,選擇對應的操作,比如"RENAME"操作,需要注意的是,正在運作的檔案是無法執行"RENAME"操作的,需要将該檔案先"Shutdown"。
(4)停止檔案程序:
點選"Running" => 選擇要關閉的Notebooks,點選"關閉"按鈕即可。
(5)導入和導出檔案:
本質上對應的就是普通檔案的複制粘貼操作,隻需将對應的檔案複制到jupyter notebook的工作目錄即可。
溫馨提示:
jupyter notebook的文檔格式是".ipynb",本質上是一種類JSON的文本格式。
2>.内頁操作
所謂内頁就是使用清單頁打開的新标簽網頁,比如在清單頁建立一個Python檔案,那麼就會自動打開一個内頁,如下圖所示。
内頁有以下常見操作:
(1)菜單欄操作
比如導出檔案,依次點選"File" => "Download as" => 根據需求選擇你要導出的格式(比如"HTML","Markdown","PDF","Python"格式等)
(2)工具欄操作
比如儲存檔案,可以點選儲存按鈕的logo,也可以直接使用"Ctrl + s",基本上工具欄的操作都可以使用快捷鍵來替代。
工具欄各圖示說明:儲存,插入cell,剪切cell,粘貼cell,向上移動cell,向下移動cell,執行cell代碼,重新開機Python核心,cell分類模式(Code/Markdown/Raw NBConvert/H1-H6) => 控制台
(3)工作區:
可以支援一系列的快捷鍵,當然也支援上面的工具欄操作喲~但是操作的對象都是針對工作區的每個cell。
溫馨提示:
cell模式分類說明:
Code:
該模式用來寫代碼,可以執行其中的代碼塊。
Markdown:
該模式可以寫解釋,文檔注釋等,支援Markdown格式,可以執行用來解析。
Raw NBConvert:
cell内容原來現實,文本不解析,即不能當代碼執行。
H1-H6:
标題模式,支援Markdown文法,隻不過字型會變大,可以執行進行解析。
三.Cell操作
相比vim編輯工具而言,jupyter notebook相對友好一點,因為它隻有兩個模式,即編輯模式(光标在cell内,即可以進行标記操作)和指令模式(光标未在cell内,即該模式不可以編輯cell)。
在某個cell内單機滑鼠,就進入到标記模式,按"ESC"就可以從編輯模式退出,當然,你也可以直接将滑鼠移動到非cell内的區域,也會自動退出編輯模式。
常用的cell快捷鍵如下所示:
a|A:
在某個cell上面新增加一行cell。
b|B
在某個cell下面新增一行cell。
d|D:
删除一行cell。
z|Z:
回退操作。
m|M:
将某行cell變為純文字的内容,即Markdown模式而非Python代碼,你可以了解成注釋内容。
y|Y:
代碼模式。
l|L:
顯示某個cell的行号。
shift + l|L:
顯示所有cell的行号。
Ctrl + shift + 減号(-):
在編輯模式中,以光标處為分隔符,将一個cell分割為2個cell。
shift + m|M:
向下合并cell。
shift + enter:
執行某行cell内的代碼,并産生一個新的cell。
ctrl + enter:
執行某行cell内的代碼,但不會産生新的cell。
ctrl + s:
儲存代碼。
檢視|設定快捷鍵方式如下:
依次點選菜單欄中的"Help" => "Keyboard Shortcuts" => 如果想要自定義快捷鍵也可以點選"編輯快捷鍵" => 修改後點選"确定"按鈕
當你的才華還撐不起你的野心的時候,你就應該靜下心來學習。當你的能力還駕馭不了你的目标的時候,你就應該沉下心來曆練。問問自己,想要怎樣的人生。
歡迎加入基礎架構自動化運維:598432640,大資料SRE進階之路:959042252,DevOps進階之路:526991186