jupyter notebook與ipython notebook
1、關系:jupyter notebook是一個互動式筆記本,前身是ipython notebook,後來從ipython獨立出來,現支援40多種程式設計語言
2、二者快捷鍵相同,是以以下不再區分
3、啟動:在終端指令jupyter notebook,之後就可以啟動jupyter botebook編輯器,啟動之後會自動打開浏覽器,并通路http://localhost:8088/tree。(指令:ipython notebook,通路http://localhost:8888/tree)
[注意:浏覽器的根目錄為終端所在位址]
1、兩種模式:command mode和edit mode。
在一個cell中按下enter就進入edit mode(光标點選直接進入edit mode),按下Esc進入command mode。
2、Cell快捷鍵
(1)建立與運作
在一個cell中(在command模式下)
1. 按下 a ,即可在這個cell之前建立一個新的cell;
2. 按下 b,即可在這個cell之後建立一個新的cell;
運作并選中下個cell:shift+enter
運作并建立cell:alt+enter
運作:ctrl+enter
(2)選擇、删除、儲存cell
删除:command模式下,在一個cell中,連續按兩次d
儲存編輯的内容:在command模式下,按s
選中多個代碼塊:
Shift
+(
↑
/
↓
); 選擇:上下左右
跳轉到第一個cell:ctrl+home
跳轉到最後一個cell:ctrl+end
(3)複制粘帖與合并:
剪切選中的代碼塊:x
複制選中的代碼塊:c
在目前塊上方粘貼:shift+v
在目前塊下方粘貼: v
與下方cell合并:shift+m
(4)code、markdown輸入模式間切換:
command模式下,y轉為code,m轉為markdown
(5)顯示行數:在command模式下,按l
(6)為一行或多行添加/取消注釋:ctrl+/
7)代碼補全:Tab
3、誤删恢複
檢視曆史指令:history
command下,按下z,撤銷cell操作,隻能撤銷一次。
edit code下,ctrl+z,撤銷指令行
4、内省
輸入一個函數或子產品之後,接着輸入?,即可看到對應的幫助文檔,有例程。有些文檔比較長,可按空格鍵翻頁,輸入q退出。
![](https://img.laitimes.com/img/9ZDMuAjOiMmIsIjOiQnIsICM38FdsYkRGZkRG9lcvx2bjxiNx8VZ6l2csknVHpVdWdkYoJ1MMBjVtJWd0ckW65UbM5WOHJWa5kHT20ESjBjUIF2X0hXZ0xCMx81dvRWYoNHLrdEZwZ1Rh5WNXp1bwNjW1ZUba9VZwlHdssmch1mclRXY39CXldWYtlWPzNXZj9mcw1ycz9WL49zZuBnL5YjMwMTNxkDM3EjMwkTMwIzLc52YucWbp5GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.png)
輸入一個函數或子產品之後,接着輸入??,可以檢視對象源碼,僅限python。
5、導入/運作python檔案
導入python檔案
(1)若是從本地導入python檔案,可以直接使用%load xxx.py,運作這個cell的方式也是shift+enter
(2)若是從網絡中導入python代碼,可以使用%load http://.......
運作python檔案
直接在cell中輸入:%run xxx.py
在cell中輸入之後,直接使用shift+enter就可以執行cell中的内容,執行結果直接在這個cell的下面顯示
注意:如果在程式中使用了matplotlib繪圖,有時候是不能直接顯示出來的,這時候需要使用加%matplotlib inline
6、magic關鍵字
Magic 關鍵字是可以在單元格中運作的特殊指令,能讓你控制 notebook 本身或執行系統調用。
Magic 指令的前面帶有一個或兩個百分号(% 或 %%):
1. %:行 Magic 指令, 僅應用于編寫 Magic 指令時所在的行;
2. %%:單元格 Magic 指令, 應用于整個cell (單元格);
和普通對象一樣,magic方法也支援自省,可%run?檢視幫助文檔。
(1)timeit
timeit關鍵字用于測試運作的需要的時間,可以測試一個函數的運作時間,還可以測試一個cell運作需要的時間。如果要測試一個函數運作需要的時間,需要在一個函數的調用的前面加上%timeit,如:%timeit A()。
如果要測試整個cell的運作時間,可以在cell的第一行使用%%timeit,然後從這一行的下一行開始寫其他程式,這樣就可以在運作這個cell的時候,把時間輸出在這個cell的下面。
(2)%hist 檢視輸入曆史
(3)%cat a.py 檢視a.py檔案的内容
(4)%run -i a.py 執行檔案,-i表示在目前命名空間進行; 此時會使用命名空間的變量,結果也會傳回到目前命名空間
(5)%who 顯示目前命名空間變量
(6)%env 檢視系統環境變量
(7)%xdel 删除變量并删除在IPython的一切引用
而del a,隻能删除a變量,不能徹底釋放空間
(8)%reset指令是指删除interactive命名空間中全部的變量名
7、調試%debug
(1)調試指令如下:
可輸入s,對單句調用進行調試,顯示中間變量
(2)在IPython之外使用debug,需要安裝調試器ipdb(pip install ipdb),再需要調試地方加入pdb.set_trace()。
用文本編輯器建立一個文檔,就命名為debug1.py吧,輸入最簡單的Python代碼片段:
import pdb
a = "a string"
b= "b string"
pdb.set_trace()
print("next step")
然後執行到pdb.set_trace()這句後會自動進入斷點調試模式
8、參考
IPython notebook快捷鍵:https://blog.csdn.net/eswai/article/details/53642802
其他操作:http://blog.csdn.net/tina_ttl/article/details/51031113