一、IPython 簡介
IPython 是一個(gè)交互式的 Python 解釋器,而且它更加高效。
它和大多傳統(tǒng)工作模式(編輯 -> 編譯 -> 運(yùn)行)不同的是, 它采用的工作模式是:執(zhí)行 -> 探索 ,而大部分和數(shù)據(jù)分析相關(guān)的代
碼都含有探索式操作(比如試誤法和迭代法),所以 IPython 能大大提高編碼效率。
IPython 發(fā)展到現(xiàn)在,它不僅僅只是一個(gè)加強(qiáng)版的 Python shell 了, 它集成了 GUI 控制臺(tái),這可以讓你直接進(jìn)行繪圖操作;它還有一個(gè)基于 Web 的交互式筆記本和一個(gè)輕量級的快速并行的計(jì)算引擎。
二、編寫代碼
在 Terminal 中輸入 ipython 既可啟動(dòng) IPython。
如果需要使用 Matplotlib 庫,則需要在啟動(dòng)的時(shí)候標(biāo)記集成 Matplotlib 包,則啟動(dòng)命令改為:ipython --pylab
1. 學(xué)會(huì)使用 Tab 鍵
在輸入代碼的時(shí)候,如果這是一個(gè)前面已經(jīng)輸入過的內(nèi)容(比如前面定義的變量),則只需要在 輸入了前幾個(gè)字母之后摁下 Tab 鍵即可自動(dòng)補(bǔ)全。
IPython 擁有這個(gè)功能是對標(biāo)準(zhǔn)的 Python shell 的主要改進(jìn),這在其他語言的 IDE 中已經(jīng)非常常見。
不僅能自動(dòng)補(bǔ)全變量、對象等,像在 Terminal 中敲入命令一樣 Tab 鍵還可以自動(dòng)完成文件路徑。
2. 上下箭頭鍵,快速輸入歷史命令
當(dāng)某條命令或代碼需要反復(fù)輸入的時(shí)候,不必每次都手動(dòng)敲一遍,只需要使用上箭頭鍵既可自動(dòng)補(bǔ)全上一條命令;此時(shí)再繼續(xù)摁上箭頭鍵是上上條命令。
如果某個(gè)命令需要摁很多次上箭頭鍵才能找到,此時(shí)只需要輸入那條命令的前幾個(gè)字母然后再摁上箭頭鍵,即可只篩選符合前幾個(gè)字母的命令。
3. 執(zhí)行一個(gè) .py 文件
如果想要執(zhí)行一個(gè)外部的 .py 文件,使用 %run 命令,例如:
4. 查看相關(guān)代碼的通用信息
當(dāng)你需要查看一個(gè)變量或?qū)ο笙嚓P(guān)的通用信息的時(shí)候,在此變量后添加一個(gè)問號然后摁回車鍵即可。例如:
如果某個(gè)函數(shù)的包含 docstring,則在函數(shù)名后添加一個(gè)問號(?)也可以查看相關(guān)的 docstring 內(nèi)容;
如果在函數(shù)名后添加兩個(gè)問號(??),則可以顯示該函數(shù)相關(guān)的源代碼,例如:
5. 編碼過程中相關(guān)的快捷鍵
Ctrl+F 光標(biāo)前移1個(gè)字符
Ctrl+B 光標(biāo)后移1個(gè)字符
Ctrl+A 光標(biāo)移至行首
Ctrl+E 光標(biāo)移至行尾
Ctrl+U 刪除此行光標(biāo)之前的所有內(nèi)容
Ctrl+K 刪除此行光標(biāo)之后的所有內(nèi)容
Ctrl+L 清屏(Mac 下 Cmd+K 也可以)
三、調(diào)試代碼
1. 代碼發(fā)生異常后啟動(dòng)調(diào)試器
在代碼發(fā)生異常后,輸入 %debug 命令會(huì)啟動(dòng)調(diào)試器并自動(dòng)跳轉(zhuǎn)到“事發(fā)地點(diǎn)”:
輸入 q 命令退出調(diào)試器。
2. 單步執(zhí)行
使用帶 -d 選項(xiàng)的 %run 命令可以預(yù)先打開調(diào)試器,輸入 s 單步進(jìn)入函數(shù)調(diào)用,輸入 n 命令執(zhí)行到下一行代碼,輸入嘆號(!)緊接著輸入變量名可查看變量的值。例如:
這條命令如果再添加一個(gè)指定行號的選項(xiàng)(-b)即可在啟動(dòng)調(diào)試器時(shí)設(shè)置一個(gè)斷點(diǎn),例如:
總結(jié)
以上就是Python利用IPython提高開發(fā)效率的全部內(nèi)容,希望本文對大家學(xué)習(xí)使用python有所幫助。
原文鏈接:http://www.cnblogs.com/sirkevin/p/5734528.html