Python·Jupyter Notebook各種使用方法記錄·持續(xù)更新
標(biāo)簽(空格分隔): Python
Jupyter notebook )前身為IPython Notebook,,學(xué)習(xí)時(shí),,可以找兩者的教程
一、 Jupyter NoteBook的安裝
1.1 新版本Anaconda自帶Jupyter
- 目前,,最新版本的Anaconda是自帶Jupyter NoteBook的,,不需要再單獨(dú)安裝
1.2 老版本Anacodna需自己安裝Jupyter
Jupyter Notebook安裝的官方網(wǎng)站
安裝Jupyter Notebook的先決條件:已經(jīng)安裝了python(python 2.7 或者是python3.3)
具體的安裝方法:
- 官方建議利用Anaconda安裝Jupyter
- 安裝完成Anaconda后,如果該Anaconda并不自帶Jupyter Noterbook,,那么,,打開(kāi)cmd,輸入:
conda install jupyter
這樣安裝完的jupyter不具有New a terminal的功能
經(jīng)過(guò)各種查詢才知道,,原來(lái)是因?yàn)閣indows不具有terminal需要的TTY,,所以,windows下的jupyter是不支持Terminal模式的,,而且短期內(nèi)也沒(méi)有增加這種支持的計(jì)劃
二,、 更改Jupyter notebook的工作空間
2.1 Jupyter的工作空間在哪里指定?
在其配置文件ipython_notebook_config.py中,,有如下一句
# The directory to use for notebooks and kernels.
# c.NotebookApp.notebook_dir = u''
該句就是用來(lái)指定其工作空間的,例如,,默認(rèn)的工作空間是:用戶名文件夾,,例如,現(xiàn)在想要將工作空間變?yōu)镈:\Jupyter,,那么,,需要做如下更改(要記得刪掉注釋#)
# The directory to use for notebooks and kernels.
c.NotebookApp.notebook_dir = u'D:\Jupyter'
注意:路徑最后一級(jí)后面不要加符號(hào)“\”
2.2 如何找到該配置文件?
- 在cmd中輸入
jupyter notebook --generate-config
- 如果該配置文件已經(jīng)存在,,那么,,會(huì)出現(xiàn)如下信息,從中可以見(jiàn)到配置文件存在的位置,注意,,此時(shí),,輸入N,不要overwrite
- 如果該配置文件不存在,,那么,,將會(huì)初始化產(chǎn)生一個(gè)配置文件
在cmd中輸入:ipython profile create
可以找到關(guān)于jupyter的配置文件的位置
三、Jupyter的各種快捷鍵
執(zhí)行當(dāng)前cell,,并自動(dòng)跳到下一個(gè)cell:Shift Enter
執(zhí)行當(dāng)前cell,,執(zhí)行后不自動(dòng)調(diào)轉(zhuǎn)到下一個(gè)cell:Ctrl-Enter
是當(dāng)前的cell進(jìn)入編輯模式:Enter
退出當(dāng)前cell的編輯模式:Esc
刪除當(dāng)前的cell:雙D
為當(dāng)前的cell加入line number:?jiǎn)蜭
將當(dāng)前的cell轉(zhuǎn)化為具有一級(jí)標(biāo)題的maskdown:?jiǎn)?
將當(dāng)前的cell轉(zhuǎn)化為具有二級(jí)標(biāo)題的maskdown:?jiǎn)?
將當(dāng)前的cell轉(zhuǎn)化為具有三級(jí)標(biāo)題的maskdown:?jiǎn)?
為一行或者多行添加/取消注釋:Crtl /
撤銷(xiāo)對(duì)某個(gè)cell的刪除:z
瀏覽器的各個(gè)Tab之間切換:Crtl PgUp 和Crtl PgDn
快速跳轉(zhuǎn)到首個(gè)cell:Crtl Home
快速跳轉(zhuǎn)到最后一個(gè)cell:Crtl End
四,、Jupyter Notebook如何導(dǎo)入代碼
即導(dǎo)入代碼到j(luò)upyter notebook的cell中
4.1 將本地的.py文件load到j(luò)upyter的一個(gè)cell中
問(wèn)題背景:有一個(gè)test.py文件,需要將其載入到j(luò)upyter的一個(gè)cell中
test.py內(nèi)容如下:
import caffe
SolverName = "/root/workspace"
sovler = caffe.AdamSolver(SolverName)
方法步驟:
(1)在需要導(dǎo)入該段代碼的cell中輸入
%load test.py #test.py是當(dāng)前路徑下的一個(gè)python文件
(2)運(yùn)行該cell
利用快捷鍵“Shift+Enter”,,可以看到如下結(jié)果:
(3)可以看到,,運(yùn)行后,%load test.py 被自動(dòng)加入了注釋符號(hào)#,,test.py中的所有代碼都被load到了當(dāng)前的cell中
4.2 從網(wǎng)絡(luò)load代碼到j(luò)upyter
在cell中輸入%load http://..... ,,然后運(yùn)行該cell,就會(huì)將load后面所對(duì)應(yīng)地址的代碼load到當(dāng)前的cell中,;
下面給出一個(gè)例子,,導(dǎo)入matplotlib中的一個(gè)小例子color example code
首先,在想要導(dǎo)入該段代碼的cell中輸入
%load test.py #test.py是當(dāng)前路徑下的一個(gè)python文件
然后,,Shift+Enter運(yùn)行,,可以看到如下結(jié)果:
可以看到,運(yùn)行后,,%load test.py 被自動(dòng)加入了注釋符號(hào)#,,test.py中的所有代碼都被load到了當(dāng)前的cell中
五、Jupyter運(yùn)行python文件
- 利用jupyter的cell是可以運(yùn)行python文件的,,即在cell中運(yùn)行如下代碼:
%run file.py
file.py為要運(yùn)行的python程序,,結(jié)果會(huì)顯示在該cell中
六、Jupyter一些其他瑣碎用法
6.1 jupyter的cell可以作為unix command使用
具體方法為:在unitx command前面加入一個(gè)感嘆號(hào)“,!”
例子:
查看python版本:!python --version
運(yùn)行python文件:!python myfile.py
6.2 Magic functions
還沒(méi)有太明白,,具體細(xì)節(jié)見(jiàn)The cell magics in IPython
6.3 獲取current working directory
即當(dāng)前運(yùn)行的代碼所在的路徑
具體方法:current_path = %pwd
這樣得到的current_path就是當(dāng)前工作路徑的字符轉(zhuǎn)
6.4 使用Matplotlib繪圖
在Jupyter Notebook中,如果使用Matplotlib繪圖,,有時(shí)是彈不出圖像框的,,此時(shí),可以在開(kāi)頭加入
%matplotlib inline
七,、Jupyter中的Markdown
參考1
Markdown 語(yǔ)法手冊(cè) (完整整理版)參考
7.1 在jupyter中設(shè)置link,,需要設(shè)置兩部分:
要跳到的位置(the destination)
需要在要跳轉(zhuǎn)到的位置添加下面語(yǔ)句:
<a id='the_destination'></a>
這里的id取值任意賦值,下面在添加鏈接時(shí)要用
需要添加鏈接的文字(an internal hyperlink to the destination),,即點(diǎn)擊該處可以跳轉(zhuǎn)到the destination,,在需要添加鏈接的文字后面加入:
[需要添加連接的文字](#the_destination)
下面是一個(gè)例子:
源碼:
效果圖:
7.2 為Jupyter Notebook添加目錄功能
- 原始的Jupyter是不支持markdown添加目錄功能的
- 實(shí)際上,可以利用Jupyter notebook extensions去使得這種功能實(shí)現(xiàn)
- 具體方法:
- 利用Anaconda安裝Jupyter Notebook extensions
conda install -c conda-forge jupyter_contrib_nbextensions
- 打開(kāi)Jupyter Notebook,,在它的(新增的)Nbextensions標(biāo)簽下勾選“Table of Contents(2)”
- 打開(kāi)一個(gè).jpynb文件,,發(fā)現(xiàn),目錄功能可用了,!
參考文獻(xiàn)
[1] 為Jupyter Notebook添加目錄
|