哪里可以尋找到良好的Python 代碼開發(fā)工具?
在網(wǎng)上尋找資源時,一定會發(fā)現(xiàn)一些或多或少標(biāo)準(zhǔn)的和免費的Python 代碼開發(fā)工具,大體來說,這些工具都是穩(wěn)定、堅固、和設(shè)計周全的,但是,也不避免一些華而不實的開發(fā)工具。
一個純 Python 下使用 Tkinter 編寫的相當(dāng)基本的 IDE。Idle 總的來說是標(biāo)準(zhǔn)的 Python 發(fā)行版,甚至是由 Guido van Rossum 親自編寫(至少最初的絕大部分)。您可在能運行 Python 和 TK 的任何環(huán)境下運行 Idle。打開 Idle 后出現(xiàn)一個增強的交互命令行解釋器窗口(具有比基本的交互命令提示符更好的剪切-粘貼、回行等功能)。
除此之外,還有一個針對 Python 代碼開發(fā)工具(無代碼合并,但有語法標(biāo)簽高亮和代碼自動完成功能)、類瀏覽器和調(diào)試器。菜單為 TK “剝離”式;也就是點擊頂部任意下拉菜單的虛線將會將該菜單提升到它自己的永久窗口中去。
特別是 "Edit" 菜單,將其“靠”在桌面一角非常實用。Idle 的調(diào)試器提供斷點、步進(jìn)和變量監(jiān)視功能;但并沒有其內(nèi)存地址和變量內(nèi)容存數(shù)或進(jìn)行同步和其他分析功能來得優(yōu)秀。
當(dāng)然,我的調(diào)試風(fēng)格包括某些分散的 print 命令,但您的方法可與我不同。Idle 中的一些小問題 -- 至少在 0.6 版中存在。在我的 Win95r2 系統(tǒng)下,彈出模板總會停留在屏幕上擋住我想輸入的東西。可能更嚴(yán)重的是這很容易在運行錯誤的腳本時引起 Idle 停止響應(yīng)。#t#
例如,代碼 while 1:x=1 必定會引起 Idle 自行強制關(guān)閉,而非執(zhí)行代碼。顯然,不會有人故意首先編寫這段代碼,但即使在最老的 Python 交互會話也可使用 Ctrl-C 將其關(guān)閉(無可否認(rèn)是有此功能的會話)。
在許多方面都比 Idle 優(yōu)秀。當(dāng)然,如軟件名稱所示,這個工具是針對 Win32 用戶的。獲得 PythonWin 的最簡單方法是下載 ActivePython 2.0 發(fā)行版,該版本相當(dāng)不錯(為本專欄我安裝了 build 203)。
ActiveState 的Python 代碼開發(fā)工具包括一系列優(yōu)秀的附加模塊,還有些(例如 NumPy 和 PIL)在安裝過程中可選擇作為附加下載。還有其他附加模塊;一個特別的是 PythonWin (Idle 也包括在內(nèi))。
另一個是針對 Windows 腳本編寫的一系列有用的 PythonCOM 擴(kuò)展組件。ActiveState 還有非 Windows 發(fā)行版,但一些組件缺少與 Windows 的對應(yīng)。PythonWin 使用起來非常得心應(yīng)手。它有個好用的編輯器,包括代碼合并、語法標(biāo)簽高亮顯示以及代碼自動完成特性。
PythonWin 和有些 IDE 一樣,不包含任何類型的表單設(shè)計器;但它提供一個優(yōu)秀的調(diào)試器,具有監(jiān)視、代碼檢查、交互調(diào)試窗口、斷點、和其他調(diào)試器該有的功能。最重要的是,PythonWin 很穩(wěn)定,盡管有時候在 Win95r2 系統(tǒng)上使用時會奇怪地“停止響應(yīng)”。界面上來說,PythonWin 比較簡單,但非常吸引人。
以我的觀點,Komodo 更像是 PythonWin 的超集。據(jù)我所知,它不共享大多數(shù)的相同代碼庫,但使用的感覺及其相似。由于繼承了 Mozilla 的特性,Komodo 是我所測評的軟件中界面最好的一個,因為同樣的原因它也是運行最慢的。
我建議不要在較老的機器上使用 Komodo;我在 366Mhz Win95r2 系統(tǒng)上測試,發(fā)現(xiàn)它能運行,但是速度不快。雖然調(diào)試器和編輯器的界面與 PythonWin 差不多,但是您可編輯許多其他語言,以及調(diào)試 Perl 和 Python;而且您可在 Linux 下運行 Komodo。
Komodo 的“代碼檢查”功能非常智能和獨特。它像許多近期字處理軟件的拼寫檢查器那樣運作:在輸入的時候,有問題的代碼以下劃曲線標(biāo)示;您可繼續(xù)輸入,而它會一直標(biāo)示著直到您返回并修正該問題,同時也是個很好的提示。Komodo 沒有試圖內(nèi)建任何表單設(shè)計器或者圖形編程,除此之外,作為 beta 版它是還是不錯的。
很好的運用了可嵌入和可對接的元素。PythonWin 還集成了 ActiveState 的 HtmlHelp 版本的 Python 說明文檔和 PythonCOM。和 PythonWin 類似,只是針對平臺不同。與 Idle 和 PythonWin 類似,MacPython IDE 與針對其平臺的標(biāo)準(zhǔn)發(fā)行版一同出現(xiàn),并且是免費軟件(由 Just van Rossum 編寫)。
安裝Python 代碼開發(fā)工具完成后,我建議首先要做的是設(shè)法取得 Advanced Editor Patch 。第一次安裝有點奇怪,但第三次成功了;安裝這個補丁就能獲得語法標(biāo)簽高亮顯示以及一些上下文敏感的函數(shù)或模塊的幫助功能。除了標(biāo)準(zhǔn)版,我不知道是否有其它 IDE 能和 Mac 平臺上的 Python 一同工作。
【編輯推薦】