Python利用IPython提高開發效率,pythonipython

來源:互聯網
上載者:User

Python利用IPython提高開發效率,pythonipython

一、IPython 簡介

IPython 是一個互動 Python 解譯器,而且它更加高效。

它和大多傳統工作模式(編輯 -> 編譯 -> 運行)不同的是, 它採用的工作模式是:執行 -> 探索 ,而大部分和資料分析相關的代

碼都含有探索式操作(比如試誤法和迭代法),所以 IPython 能大大提高編碼效率。

IPython 發展到現在,它不僅僅只是一個加強版的 Python shell 了, 它整合了 GUI 控制台,這可以讓你直接進行繪圖操作;它還有一個基於 Web 的互動式筆記本和一個輕量級的快速並行的計算引擎。

二、編寫代碼

在 Terminal 中輸入 ipython 既可啟動 IPython。
如果需要使用 Matplotlib 庫,則需要在啟動的時候標記整合 Matplotlib 包,則啟動命令改為:ipython --pylab

1. 學會使用 Tab 鍵

在輸入代碼的時候,如果這是一個前面已經輸入過的內容(比如前面定義的變數),則只需要在 輸入了前幾個字母之後摁下 Tab 鍵即可自動補全。
IPython 擁有這個功能是對標準的 Python shell 的主要改進,這在其他語言的 IDE 中已經非常常見。

不僅能自動補全變數、對象等,像在 Terminal 中敲入命令一樣 Tab 鍵還可以自動完成檔案路徑。

2. 上下方向鍵,快速輸入曆史命令

當某條命令或代碼需要反覆輸入的時候,不必每次都手動敲一遍,只需要使用上方向鍵既可自動補全上一條命令;此時再繼續摁上方向鍵是上上條命令。

如果某個命令需要摁很多次上方向鍵才能找到,此時只需要輸入那條命令的前幾個字母然後再摁上方向鍵,即可只篩選符合前幾個字母的命令。

3. 執行一個 .py 檔案

如果想要執行一個外部的 .py 檔案,使用 %run 命令,例如:

4. 查看相關代碼的通用資訊

當你需要查看一個變數或對象相關的通用資訊的時候,在此變數後添加一個問號然後摁斷行符號鍵即可。例如:

如果某個函數的包含 docstring,則在函數名後添加一個問號(?)也可以查看相關的 docstring 內容;
如果在函數名後添加兩個問號(??),則可以顯示該函數相關的原始碼,例如:

5. 編碼過程中相關的快速鍵

     Ctrl+F 游標前移1個字元

     Ctrl+B 游標後移1個字元

     Ctrl+A 游標移至行首

     Ctrl+E 游標移至行尾

     Ctrl+U 刪除此行游標之前的所有內容

     Ctrl+K 刪除此行游標之後的所有內容

     Ctrl+L 清屏(Mac 下 Cmd+K 也可以)

三、調試代碼

1. 代碼發生異常後啟動調試器

在代碼發生異常後,輸入 %debug 命令會啟動調試器並自動跳轉到“事發地點”:

輸入 q 命令退出調試器。

2. 逐步執行

使用帶 -d 選項的 %run 命令可以預先開啟調試器,輸入 s 單步進入函數調用,輸入 n 命令執行到下一行代碼,輸入歎號(!)緊接著輸入變數名可查看變數的值。例如:

這條命令如果再添加一個指定行號的選項(-b)即可在啟動調試器時設定一個斷點,例如:

總結

以上就是Python利用IPython提高開發效率的全部內容,希望本文對大家學習使用python有所協助。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.