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