Jupyter notebook 的使用

Jupyter notebook 是一種 Web 應(yīng)用嘹朗,它能讓用戶將說(shuō)明文本师妙、數(shù)學(xué)方程、代碼和可視化內(nèi)容全部組合到一個(gè)易于共享的文檔中屹培,非常方便研究和教學(xué)默穴。在原始的 Python shell 與 IPython 中,可視化在單獨(dú)的窗口中進(jìn)行褪秀,而文字資料以及各種函數(shù)和類腳本包含在獨(dú)立的文檔中蓄诽。

1 安裝

通過(guò)安裝Anaconda來(lái)解決Jupyter Notebook的安裝問(wèn)題,因?yàn)锳naconda已經(jīng)自動(dòng)為你安裝了Jupter Notebook及其他工具媒吗,還有python中超過(guò)180個(gè)科學(xué)包及其依賴項(xiàng)仑氛。

2 修改默認(rèn)工作目錄

在cmd中輸入 jupyter notebook --generate-config

如果該配置文件已經(jīng)存在,那么闸英,會(huì)出現(xiàn)如下信息锯岖,從中可以見到配置文件存在的位置,注意甫何,此時(shí)出吹,輸入N,不要overwrite

在用戶目錄下可以看到j(luò)upyter_notebook_config.py文件

找到c.NotebookApp.notebook_dir = ''

修改為需要的目錄即可,如:c.NotebookApp.notebook_dir = 'D:\workspace\jupyter_notebook'

有個(gè)問(wèn)題辙喂,從命令行輸入jupyter notebook的時(shí)候發(fā)現(xiàn)目錄已經(jīng)更改了捶牢,但是點(diǎn)擊桌面的jupyter圖標(biāo)打開的目錄依然沒有修改赃额,這是找到桌面圖標(biāo)所在位置點(diǎn)擊【屬性】,找到下圖位置叫确,刪掉%USERPROFILE%跳芳,保存即可。

3 常用快捷鍵

命令模式快捷鍵(按 Esc 鍵開啟):

快捷鍵 作用 說(shuō)明
Enter 轉(zhuǎn)入編輯模式
Shift-Enter 運(yùn)行本單元竹勉,選中下個(gè)單元 新單元默認(rèn)為命令模式
Ctrl-Enter 運(yùn)行本單元
Alt-Enter 運(yùn)行本單元飞盆,在其下插入新單元 新單元默認(rèn)為編輯模式
Y 單元轉(zhuǎn)入代碼狀態(tài)
M 單元轉(zhuǎn)入 markdown 狀態(tài)
R 單元轉(zhuǎn)入 raw 狀態(tài)
1 設(shè)定 1 級(jí)標(biāo)題 僅在 markdown 狀態(tài)下時(shí)建議使用標(biāo)題相關(guān)快捷鍵,如果單元處于其他狀態(tài)次乓,則會(huì)強(qiáng)制切換到 markdown 狀態(tài)
2 設(shè)定 2 級(jí)標(biāo)題
3 設(shè)定 3 級(jí)標(biāo)題
4 設(shè)定 4 級(jí)標(biāo)題
5 設(shè)定 5 級(jí)標(biāo)題
6 設(shè)定 6 級(jí)標(biāo)題
Up 選中上方單元
K 選中上方單元
Down 選中下方單元
J 選中下方單元
Shift-K 連續(xù)選擇上方單元
Shift-J 連續(xù)選擇下方單元
A 在上方插入新單元
B 在下方插入新單元
X 剪切選中的單元
C 復(fù)制選中的單元
Shift-V 粘貼到上方單元
V 粘貼到下方單元
Z 恢復(fù)刪除的最后一個(gè)單元
D,D 刪除選中的單元 連續(xù)按兩個(gè) D 鍵
Shift-M 合并選中的單元
Ctrl-S 保存當(dāng)前 NoteBook
S 保存當(dāng)前 NoteBook
L 開關(guān)行號(hào) 編輯框的行號(hào)是可以開啟和關(guān)閉的
O 轉(zhuǎn)換輸出
Shift-O 轉(zhuǎn)換輸出滾動(dòng)
Esc 關(guān)閉頁(yè)面
Q 關(guān)閉頁(yè)面
H 顯示快捷鍵幫助
I,I 中斷 NoteBook 內(nèi)核
0,0 重啟 NoteBook 內(nèi)核
Shift 忽略
Shift-Space 向上滾動(dòng)
Space 向下滾動(dòng)

編輯模式快捷鍵( 按 Enter 鍵啟動(dòng)):

快捷鍵 作用 說(shuō)明
Tab 代碼補(bǔ)全或縮進(jìn)
Shift-Tab 提示 輸出幫助信息吓歇,部分函數(shù)、類票腰、方法等會(huì)顯示其定義原型城看,如果在其后加 ? 再運(yùn)行會(huì)顯示更加詳細(xì)的幫助
Ctrl-] 縮進(jìn) 向右縮進(jìn)
Ctrl-[ 解除縮進(jìn) 向左縮進(jìn)
Ctrl-A 全選
Ctrl-Z 撤銷
Ctrl-Shift-Z 重做
Ctrl-Y 重做
Ctrl-Home 跳到單元開頭
Ctrl-Up 跳到單元開頭
Ctrl-End 跳到單元末尾
Ctrl-Down 跳到單元末尾
Ctrl-Left 跳到左邊一個(gè)字首
Ctrl-Right 跳到右邊一個(gè)字首
Ctrl-Backspace 刪除前面一個(gè)字
Ctrl-Delete 刪除后面一個(gè)字
Esc 切換到命令模式
Ctrl-M 切換到命令模式
Shift-Enter 運(yùn)行本單元,選中下一單元 新單元默認(rèn)為命令模式
Ctrl-Enter 運(yùn)行本單元
Alt-Enter 運(yùn)行本單元杏慰,在下面插入一單元 新單元默認(rèn)為編輯模式
Ctrl-Shift-- 分割單元 按光標(biāo)所在行進(jìn)行分割
Ctrl-Shift-Subtract 分割單元
Ctrl-S 保存當(dāng)前 NoteBook
Shift 忽略
Up 光標(biāo)上移或轉(zhuǎn)入上一單元
Down 光標(biāo)下移或轉(zhuǎn)入下一單元
Ctrl-/ 注釋整行/撤銷注釋 僅代碼狀態(tài)有效

注: 如果快捷鍵被系統(tǒng)中的其它應(yīng)用占用测柠,則可能會(huì)失效

命令模式Command Mode

按鍵 功能 按鍵 功能
Enter 進(jìn)入當(dāng)前塊的編輯模式 X 剪切選中的代碼塊
Shift+Enter 運(yùn)行當(dāng)前塊并選中下一塊 C 復(fù)制選中的代碼塊
Ctrl+Enter 運(yùn)行當(dāng)前塊 Shift+V 在當(dāng)前塊上方粘貼
Alt+Enter 運(yùn)行當(dāng)前塊并在下方插入新塊 V 在當(dāng)前塊下方粘貼
Y 切換到代碼狀態(tài) Z 撤銷刪除操作
M 切換到MarkDown狀態(tài) D,D 刪除選中的代碼塊
R 切換到Raw NBConvert Shift+M 將當(dāng)前塊與下一塊合并
數(shù)字鍵16 將當(dāng)前塊第一行變?yōu)镸arkDown的n級(jí)標(biāo)題 S / Ctrl+S 保存并設(shè)置檢查點(diǎn)
/ K 選擇上一個(gè)代碼塊 L 顯示/隱藏當(dāng)前塊的代碼行號(hào)
/ J 選擇下一個(gè)代碼塊 O 顯示/隱藏當(dāng)前塊的輸出內(nèi)容
A 在當(dāng)前塊上方插入新代碼塊 Shift+O 顯示/隱藏當(dāng)前塊的輸出內(nèi)容的滾動(dòng)條
B 在當(dāng)前塊下方插入新代碼塊 Esc / Q 關(guān)閉彈窗
H 展示快捷鍵幫助 I,I 打斷kernal運(yùn)行
Space 滾動(dòng)向下 O,O 重啟kernal
Shift+Space 滾動(dòng)向上 Shift+(/) 選中多個(gè)代碼塊

編輯模式Edit Mode

按鍵 功能 按鍵 功能
Tab 代碼補(bǔ)全/縮進(jìn) Ctrl+ 光標(biāo)右移一個(gè)詞
Shift+Tab 工具提示/反縮進(jìn) Ctrl+Backspace 刪除前一個(gè)詞
Ctrl+[ 縮進(jìn) Ctrl+Delete 刪除后一個(gè)詞
Ctrl+] 反縮進(jìn) Ctrl+M / Esc 進(jìn)入命令模式
Ctrl+A 全選 Ctrl+Shift+P 打開命令選擇板
Ctrl+Z 撤銷 Shift+Enter 運(yùn)行當(dāng)前塊并選中下一塊
Ctrl+Y / Ctrl+Shift+Z 重復(fù) Ctrl+Enter 運(yùn)行當(dāng)前塊
Ctrl+Home 移動(dòng)光標(biāo)到塊首 Alt+Enter 運(yùn)行當(dāng)前塊并在下方插入新塊
Ctrl+End 移動(dòng)光標(biāo)到塊尾 Ctrl+Shift+- 按光標(biāo)位置分割當(dāng)前塊
Ctrl+ 光標(biāo)左移一個(gè)詞 Ctrl+S 保存并設(shè)置檢查點(diǎn)

4 修改jupyter notebook的主題

主題地址:https://github.com/dunovank/jupyter-themes

4.1 安裝jupter notebook的自定義主題

pip install jupyterthemes
pip install --upgrade jupyterthemes  # 可以不用升級(jí)

【問(wèn)題1】版本太低

notebook 5.7.4 has requirement jupyter-core>=4.4.0, but you'll have jupyter-core 4.3.0 which is incompatible.
Installing collected packages: notebook, jupyterthemes
  Found existing installation: notebook 5.0.0
Cannot uninstall 'notebook'. It is a distutils installed project and thus we cannot accurately determine which files belong to it which would lead to only a partial uninstall.

【解決1】更新一下,即可

pip install --upgrade jupyter-core

【問(wèn)題2】

Cannot uninstall 'notebook'. It is a distutils installed project and thus we cannot accurately determine which files belong to it which would lead to only a partial uninstall.

【解決2】

pip install jupyterthemes  --ignore-installed notebook

【問(wèn)題3】prompt_toolkit版本太高

jupyter-console 5.2.0 has requirement prompt_toolkit<2.0.0,>=1.0.0, but you'll have prompt-toolkit 2.0.7 which is incompatible.

【解決3】先查看當(dāng)前prompt_toolkit的版本缘滥,刪掉再重新安裝

pip show prompt_toolkit 
pip uninstall prompt_toolkit
pip install prompt_toolkit==1.0.15

4.2 相關(guān)命令

查看主題:

>jt -l
Available Themes:
   chesterish
   grade3
   gruvboxd
   gruvboxl
   monokai
   oceans16
   onedork
   solarizedd
   solarizedl

修改主題:

jt -t oceans16 -T -N -fs 12   -tfs 12

恢復(fù)原來(lái)的配置

jt -r
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末轰胁,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子朝扼,更是在濱河造成了極大的恐慌赃阀,老刑警劉巖,帶你破解...
    沈念sama閱讀 212,816評(píng)論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件擎颖,死亡現(xiàn)場(chǎng)離奇詭異榛斯,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)搂捧,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,729評(píng)論 3 385
  • 文/潘曉璐 我一進(jìn)店門驮俗,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人异旧,你說(shuō)我怎么就攤上這事意述。” “怎么了吮蛹?”我有些...
    開封第一講書人閱讀 158,300評(píng)論 0 348
  • 文/不壞的土叔 我叫張陵荤崇,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我潮针,道長(zhǎng)术荤,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,780評(píng)論 1 285
  • 正文 為了忘掉前任每篷,我火速辦了婚禮瓣戚,結(jié)果婚禮上端圈,老公的妹妹穿的比我還像新娘。我一直安慰自己子库,他們只是感情好舱权,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,890評(píng)論 6 385
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著仑嗅,像睡著了一般宴倍。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上仓技,一...
    開封第一講書人閱讀 50,084評(píng)論 1 291
  • 那天鸵贬,我揣著相機(jī)與錄音,去河邊找鬼脖捻。 笑死阔逼,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的地沮。 我是一名探鬼主播嗜浮,決...
    沈念sama閱讀 39,151評(píng)論 3 410
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼诉濒!你這毒婦竟也來(lái)了周伦?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,912評(píng)論 0 268
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤未荒,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后及志,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體片排,經(jīng)...
    沈念sama閱讀 44,355評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,666評(píng)論 2 327
  • 正文 我和宋清朗相戀三年速侈,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了率寡。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,809評(píng)論 1 341
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡倚搬,死狀恐怖冶共,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情每界,我是刑警寧澤捅僵,帶...
    沈念sama閱讀 34,504評(píng)論 4 334
  • 正文 年R本政府宣布,位于F島的核電站眨层,受9級(jí)特大地震影響庙楚,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜趴樱,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 40,150評(píng)論 3 317
  • 文/蒙蒙 一恼策、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧鹃操,春花似錦甘磨、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,882評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至永罚,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間议薪,已是汗流浹背尤蛮。 一陣腳步聲響...
    開封第一講書人閱讀 32,121評(píng)論 1 267
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留斯议,地道東北人产捞。 一個(gè)月前我還...
    沈念sama閱讀 46,628評(píng)論 2 362
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像哼御,于是被迫代替她去往敵國(guó)和親坯临。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,724評(píng)論 2 351