1. 程式人生 > >ipython+notebook使用教程(轉載)

ipython+notebook使用教程(轉載)

IPython notebook目前已經成為用Python做教學、計算、科研的一個重要工具。關於其發展,以及介紹,感興趣可以找文獻閱讀。本文主要講解的是它的基本用法和技巧。

IPython Notebook使用瀏覽器作為介面,向後臺的IPython伺服器傳送請求,並顯示結果。

Ipython使用了websocket,它是不支援IE的.一般用Chrome就好了.

好, 說了這麼多,我們開啟先看下,開啟方式很簡單,直接cmd進入到你要建立的目錄下,然後輸入命令:ipython notebook(現在升級了,開啟主頁顯示的是jupyter,所以也可以使用jupyter notebook命令)。

可以看到在瀏覽器介面中使用單元(Cell)儲存各種資訊。Cell有多種型別,經常使用的有表示程式碼的Code單元,和表示格式化文字的Markdown單元。

每個程式碼單元都有一個輸出區域,在Code單元中輸入程式碼,按 Ctrl-Enter 將執行此程式碼,程式碼中最後一個表示式的值將輸出區域顯示。如果希望遮蔽輸出,可以在最後一條語句之後新增一個分號:”;”。此外,程式碼中還可以使用print語句在輸出區域中顯示資訊。

與IPython一樣,在cell中可以直接按tab鍵,可以自動補全,超級實用。

Markdown文字

具體可以參考https://maxiang.io/或者其他文件

  • 文字編輯

Markdown 是一種用來寫作的輕量級「標記語言」,它用簡潔的語法代替排版,而不像一般我們用的字處理軟體 Word 或 Pages 有大量的排版、字型設定。它使我們專心於碼字,用「標記」語法,來代替常見的排版格式。

  • 數學公式

可以使用LaTeX公式

建立行內公式,例如 $\Gamma(n) = (n-1)!\quad\forall n\in\mathbb N$。

或者塊級公式: $$ x = \dfrac{-b \pm \sqrt{b^2 - 4ac}}{2a$$

  • 程式碼塊

可以直接在頁面輸出程式碼塊,只需要在前後加上```程式碼塊 ```即可。

  • 表格

可以使用markdown標記生成表格

嵌入圖片

嵌入音樂

可以嵌入本地音樂和網路音樂

嵌入視訊

網路視訊

本地視訊

嵌入網頁

嵌入連結

魔法命令

所有以%開頭的方法,都是所謂的魔術方法(Magic function),也就是ipython內建的一些方法。需要注意的是,魔術方法有%和%%之分,比如%timeit%%timeit。在ipython中有專門的叫法,前者叫line magic後者叫cell magic。顧名思義,前者是專門針對一行的命令,後者針對多行的命令。

通過%lsmagis可以檢視所有的magic命令,使用?或者??可以檢視該命令的資訊,後者可以檢視原始碼。如: %alias?,會出現該方法的描述。

接下來對一些常用的進行展示:

  • 載入檔案

  • 執行檔案

run命令還可以附加選項,常用的有-t選項,這個會在指令碼執行完後,打印出執行的cpu timings。如果指定了-t選項,後面可以跟一個-Nx,x代表一個數字。表示重複執行x次。

另外比較好用的是-d選項,這個會在pdb中執行指令碼。後跟-bxx打斷點。

還有一個-p選項,這個選項會開啟python profiler,從而打印出詳細的執行時間、函式呼叫等等資訊供優化參考。

  • 嵌入繪圖

在網頁中嵌入繪相簿繪製的圖形,可以使用%matplotlib inline或者%pylab inline啟動這個功能。還可以啟動ipython後臺伺服器時,在命令列下輸入ipython notebook --matplotlib inline或ipython notebook --pylab inline。這樣的話它就會匯入pylab(mathplotlib)庫.而且顯示圖片時可以嵌在網頁中的。

  • 執行效率

 這個命令用來測試一條命令執行的時間,一般而且,會重複100次執行這個命令,然後取出最好的3個結果取平均值。

還可以指定選項。

-n指定重複次數,預設100

-r是取多少個結果的平均值,預設是3

 

還有很多的magic命令,就不一一列舉,感興趣可以自己去嘗試。