一款容易上手jupyter notebook神器
今日推文速看
三條:什么樣人會(huì)去相親網(wǎng)站相親?我把用戶畫像分析出來! 四條:爬取 20W 貓貓數(shù)據(jù),來了解一下喵喵~! 五條:Python爬蟲+數(shù)據(jù)可視化? 看看全球最美Top100女神?. ↑?關(guān)注 + 星標(biāo)?,每天學(xué)Python新技能
后臺(tái)回復(fù)【大禮包】送你Python自學(xué)大禮包
一、簡(jiǎn)介
Jupyter Notebook是一個(gè)開源的 Web 應(yīng)用,能夠讓你創(chuàng)建、分享包含可執(zhí)行代碼、可視化結(jié)構(gòu)和文字說明的文檔。 Jupyter Notebook的應(yīng)用非常廣泛,它可以用在數(shù)據(jù)清理與轉(zhuǎn)換、數(shù)字模擬、統(tǒng)計(jì)模型、數(shù)據(jù)可視化、機(jī)器學(xué)習(xí)等方面。
Jupyter Notebook非常活躍于深度學(xué)習(xí)領(lǐng)域。在項(xiàng)目的實(shí)驗(yàn)測(cè)試階段,它相比于用 py 文件來直接編程更方便。在項(xiàng)目結(jié)束之后如果要寫項(xiàng)目報(bào)告,用 Jupyter 也比較合適。
二、安裝與使用
Jupyter Notebook主要有以下三個(gè)非常實(shí)用的功能:執(zhí)行代碼、數(shù)據(jù)可視化以及使用 Markdown 功能寫報(bào)告
執(zhí)行代碼。一般是 Python 程序,也可以添加新的編程語(yǔ)言。
數(shù)據(jù)可視化。如果我們經(jīng)常在 Linux 環(huán)境編程開發(fā),需要對(duì)數(shù)據(jù)可視化該怎么辦呢?是不是只能把圖片保存下來,然后下載到本地進(jìn)行查看?使用 Jupyter Notebook 就不用多此一舉,我們可以直接在頁(yè)面中查看。如下圖所示:

使用 Markdown 功能寫文檔。這些文檔中還包含了代碼以及代碼執(zhí)行后的結(jié)果,非常有助于你書寫項(xiàng)目報(bào)告。
1. 安裝
最簡(jiǎn)單的方法是通過安裝 Anaconda 來使用 Jupyter Notebook & Lab。Anaconda已自動(dòng)安裝了 Jupter Notebook 及其他工具,還有 Python 中超過 180 個(gè)科學(xué)包及其依賴項(xiàng)。安裝好 Anaconda 后進(jìn)入 Anaconda Navigator,可以通過 Anaconda Navigator 啟動(dòng) Juypter Notebook 或者 Jupyter Lab。

使用 pip 安裝與啟動(dòng):
#?升級(jí)pip
pip?install?--user?--upgrade?pip?-i?http://pypi.douban.com/simple?--trusted-host?pypi.douban.com
#?安裝?Jupyter?Notebook
pip?install?jupyter?notebook?-i?http://pypi.douban.com/simple?--trusted-host?pypi.douban.com
#?安裝?Jupyter?Lab
pip?install?jupyterlab?-i?http://pypi.douban.com/simple?--trusted-host?pypi.douban.com
安裝完成后,直接在終端執(zhí)行 jupyter notebook 或 jupyter lab 命令啟動(dòng)。
2. 基本使用
我們?cè)诿钚谢蛘?Anaconda Navigator 中啟動(dòng) Jupyter Lab 之后,瀏覽器會(huì)自動(dòng)打開如下所示的 Jupyter Lab 界面:
最左側(cè)顯示的是你啟動(dòng)時(shí)所在的目錄,右側(cè)是你可以使用的一些開發(fā)工具。
點(diǎn)擊 Notebook 的 "Python 3" 的圖標(biāo)之后,會(huì)自動(dòng)新建一個(gè) Notebook。 Jupyter Lab 與 Jupyter Notebook 中都會(huì)用到這個(gè)叫作 Notebook 的編輯工具。 Jupyter Lab 與 Jupyter Notebook 的不同之處在于 IDE 的界面以及操作方式,這里講解是以使用 Jupyter Lab 為例。 一個(gè) Notebook 的編輯界面主要由 4 個(gè)部分組成:菜單欄、工具欄、單元格(Cell)以及內(nèi)核。如下圖所示: 
單元格(Cell):
Code 單元格:包含可以在內(nèi)核運(yùn)行的代碼,并且在單元格下方輸出運(yùn)行結(jié)果。 Markdown 單元格:包含運(yùn)用 Markdown 的文檔,常用于文檔的說明,也是可以運(yùn)行的單元格。 從 Code 單元格切換到 Markdown 單元格的切換的快捷鍵是m;從 Markdown 單元格切換到 Code 單元格的切換的快捷鍵是y。 切換之前需要先按 Esc,從單元格的編輯狀態(tài)中退出。
在工具欄中也可以切換,但是還是快捷鍵方便些,如下圖所示:
我們可以通過上下鍵移動(dòng)選中的單元格。移動(dòng)到這一行,然后開始運(yùn)行這個(gè)單元格。 運(yùn)行單獨(dú)一個(gè)單元格的快捷鍵為:Ctrl+Enter,運(yùn)行選中單元格并切換到下一個(gè)單元格的快捷鍵是Shift+Enter。 a 在單元格上方插入新的單元格;b 在單元格下方插入新的單元格; x 刪除單元格;z 撤銷刪除的單元格。
3. Magic 命令
Jupyter Notebook 的前身是 IPython Notebook,所以 Jupyter 也支持 IPython 的 Magic 命令。IPython 是一個(gè)比 Python 自帶的 Shell 更加靈活方便的 Shell,它主要活躍于數(shù)據(jù)科學(xué)領(lǐng)域。
Magic 命令分兩種:
Line Magics 命令:在命令前面加%,表示只在本行有效 Cell Magics 命令:在命令前面加%%,表示在整個(gè) Cell 單元有效。
介紹幾個(gè)常用的 Magic 命令
%lsmagic:用來查看可以使用的 Magic 命令

%matplotlib inline:可以在單元格下面直接打印出 matplotlib 繪制的圖形,通常要在 matplotlib 模塊引入之前使用;使用這個(gè) Magic 命令之后,可以不用 plt.show()。

%pwd:查看當(dāng)前的文件路徑
%%writefile:寫文件,%%writefile 后面緊跟著文件名,然后下面寫文件的內(nèi)容
%run:運(yùn)行一個(gè)文件,%run 后面跟著要運(yùn)行的文件
比如我們先寫一個(gè) test_temp.py 的文件。運(yùn)行單元格之后會(huì)在當(dāng)前位置生成 test_temp.py 文件,然后使用 %run 來運(yùn)行它
%load:加載文件。使用 %load + 文件名可以把指定的文件加載到單元格內(nèi)
示例如下:
開發(fā)到某一階段時(shí),可能會(huì)發(fā)現(xiàn)之前的某些代碼寫錯(cuò)了,需要回過頭重新編輯然后運(yùn)行代碼,這是一件很正常的事情。但這個(gè)時(shí)候你要注意,每個(gè) Code 單元格是有執(zhí)行順序的,這個(gè)順序就是每個(gè)單元格前面[]的數(shù)字。
如果你想全部重新執(zhí)行的話,Kernal 菜單中的一些功能會(huì)幫到你。
Restart Kernel:重新啟動(dòng)內(nèi)核,清除所有變量。 Restart Kernel and Clear All Outputs:重新啟動(dòng)內(nèi)核,清除所有變量與輸出。 Restart Kernel and Run up to Selected Cell:重啟內(nèi)核,運(yùn)行選中的單元格。 Restart Kernel and Run All Cells:重啟內(nèi)核,運(yùn)行所有單元格。 
我們現(xiàn)在使用的是 Python 內(nèi)核,其實(shí) Jupyter 還支持很多其他的內(nèi)核,如 Java、C、R 以及 Julia 等編程語(yǔ)言的內(nèi)核。我們創(chuàng)建 Notebook 的時(shí)候就選擇好了使用什么樣的內(nèi)核。
三、配置Notebook
1. 更改默認(rèn)工作目錄
想要修改 Jupyter Notebook 那些默認(rèn)的配置選項(xiàng),就需要在配置文件 jupyter_notebook_config.py 中修改相應(yīng)配置選項(xiàng)的屬性。這個(gè)配置文件一開始并不存在,需要手動(dòng)生成,在命令行輸入 jupyter notebook --generate-config 并執(zhí)行,配置文件就創(chuàng)建好了,它的位置是在 C:\Users\Administrator.jupyter\ 中。
然后根據(jù)路徑去找配置文件:jupyter_notebook_config.py
一般情況下,jupyter的默認(rèn)工作目錄為C:\Users\Administrator\,這樣很不清爽,而且不便于管理項(xiàng)目,所以常需要在其他盤建立一個(gè)獨(dú)立的jupyter工作目錄文件。
現(xiàn)在用前面生成的配置文件jupyter_notebook_config.py,工作目錄就在這個(gè)里面進(jìn)行修改。
用記事本打開配置文件jupyter_notebook_config.py Crtl + F組合鍵,然后輸入 c.NotebookApp.notebook_dir 查找到元素,刪掉前面的注釋# 在后面的單引號(hào)里輸入要設(shè)置的目錄路徑,保存關(guān)閉;例如:c.NotebookApp.notebook_dir = r'D:\python\jupyter_notebook' 修改快捷鍵,在 win 開始菜單中搜索,找到 jupyter notebook 快捷圖標(biāo),右擊選擇屬性,刪除目標(biāo)值最后的 “%USERPROFILE%”,點(diǎn)擊確定退出。


經(jīng)過這四個(gè)步驟,工作目錄就修改好了,這時(shí)候不管你是通過快捷鍵還是命令行進(jìn)入jupyter notebook,都能看到最新設(shè)置的目錄,干凈清爽,之后寫代碼,在這個(gè)目錄下創(chuàng)建文件即可,方便管理。

2. 更換皮膚主題
Github上大神提供的包jupyterthemes:https://github.com/dunovank/jupyter-themes
pip?install?jupyterthemes?-i?http://pypi.douban.com/simple?--trusted-host?pypi.douban.com
jt?-l
Available?Themes:
???chesterish
???grade3
???gruvboxd
???gruvboxl
???monokai
???oceans16
???onedork
???solarizedd
???solarizedl
?#?有很多主題可供使用呀
查看jupyter-theme的幫助手冊(cè)
jt?-h

可以看到,幫助里告訴了我們?cè)撊绾问褂妹钜约皡?shù)設(shè)置。

更多詳細(xì)的使用和字體設(shè)置參考文檔:https://github.com/dunovank/jupyter-themes
jt?-t?monokai?-f?sourcemed?-fs?12?-tf?sourcemed?-tfs?16?-nf?code?-nfs?13?-ofs?14
運(yùn)行效果如下:
jt?-t?gruvboxl?-f?hack?-fs?12?-tf?sourcemed?-tfs?16?-nf?ptmono?-nfs?13?-ofs?14
運(yùn)行效果如下:
jt?-t?solarizedd?-f?sourcemed?-fs?12?-tf?sourcemed?-tfs?16?-nf?code?-nfs?13?-ofs?14
運(yùn)行效果如下:
jt?-t?chesterish?-f?sourcemed?-fs?12?-tf?sourcemed?-tfs?16?-nf?code?-nfs?13?-ofs?14

jt?-r

見面禮
掃碼加我微信備注「三劍客」送你上圖三本Python入門電子書?
推薦閱讀





