天天看點

《Python資料分析》一1.6 将IPython用作shell

本節書摘來自異步社群《python資料分析》一書中的第1章,第1.6節,作者【印尼】ivan idris,更多章節内容可以通路雲栖社群“異步社群”公衆号檢視

我們知道,科學家、資料分析師和工程師經常需要進行實驗,而ipython正是為實驗而生的。對于ipython提供的互動式環境,明眼人一看就知道它與matlab、mathematica和maple非常接近。

下面是ipython shell的一些特性。

tab補全功能(tab completion),可以幫助查找指令。

曆史記錄機制。

行内編輯。

利用%run用外部python腳本。

通路系統指令。

pylab開關。

通路python的調試工具和分析工具。

下面給出ipython shell的使用方法。

pylab開關:使用pylab開關可以自動導入scipy、numpy和matplotlib這3個程式包。如果沒有它,就得自己動手導入這些程式包。

我們隻需要輸入如下所示的指令:

小技巧:

 退出ipython shell時,可以使用quit()函數或者ctrl+d組合鍵。

儲存會話:有時我們可能想要恢複之前做過的實驗。對于ipython來說,這很容易,隻要儲存了會話,就可以供将來繼續使用,具體指令如下所示:

使用下列指令可以關閉記錄功能:

執行系統的shell指令:預設情況下,ipython允許通過在指令前面追加!号來執行系統的shell指令。

舉例來說,輸入下面的指令,将會得到目前日期:

事實上,任何前置了!号的指令行都将發送給系統的shell來處理。此外,可以通過如下所示的方法來存儲指令的輸出結果。

顯示曆史上用過的指令:可以利用%hist指令來顯示之前用過的指令,比如:

這在指令行接口(command line interface,cli)環境中是一種非常普遍的功能。此外,還可以用-g開關在曆史指令中進行搜尋,如下所示:

下載下傳示例代碼:

在上面的過程中,我們使用了一些所謂的魔力函數(magic functions),這些函數均以%開頭。當魔力函數單獨用于一行時,就可以省略字首%。