對于Python設計語言特性進行全解析
新一代的編程語言,Python設計語言是一種清晰的語言的另一個意思是,它的作者有意的設計限制性很強的語法,使得不好的編程習慣,和一些不喜歡代碼的用戶帶來了不少便捷。
新的Python 3.0 與2.x版本相比,在字典和字符串等眾多內置對象細節方面發生了較大變化,并且標準庫的部分內容也已進行重新組織。在NetBeans IDE 6.5版本的下載包中暫時沒有包含Python支持,但NetBeans IDE也推出了僅有28M大小的Python Early Access版本,以供Python編程者使用。
下載安裝時,Early Access版本將會自動查找已有NetBeans的安裝位置,并在安裝時在已有NetBeans IDE中集成Python設計語言支持。啟動NetBeans IDE后,可在新建項目中選擇新建Python項目或基于已有代碼創建Python項目。當然,Python EA在NetBeans 6.5的可用插件中也可以找到,并在線更新安裝。
目前IDE中默認的Python解析器是Jython 2.5 beta版本,開發者可以根據需要添加其他的C語言實現的Python解釋器。在Python EA中,已為Python編碼提供了具備高亮顯示、代碼折疊、智能感知等代碼編輯特性。
同時,IDE提供了Python的命令執行的控制臺,以及同時支持Jython和CPython的代碼調試器。Python EA在Mac平臺下還存在小的Bug。但已經可以按照郵件組中給出的方法解決問題。
NetBeans的Wiki里面也給出了在6.5版本中使用Python EA的方法。Python語言的支持正式列入到NetBeans IDE發布版之中已為期不遠。Python的創始人為Guido van Rossum。1989年圣誕節期間,在阿姆斯特丹,Guido為了打發圣誕節的無趣,決心開發一個新的腳本解釋程序,做為 ABC 語言的一種繼承。
之所以選中 Python(大蟒蛇的意思)作為程序的名字,是因為他是一個Monty Python的飛行馬戲團的愛好者。
ABC是由Guido參加設計的一種教學語言。就Guido本人看來,ABC 這種語言非常優美和強大,是專門為非專業程序員設計的。
但是ABC語言并沒有成功,究其原因,Guido 認為是非開放造成的。Guido 決心在 Python 中避免這一錯誤(的確如此,Python 與其它的語言如C、C++和Java結合的非常好)。同時,他還想實現在 ABC 中閃現過但未曾實現的東西。
就這樣,Python在Guido手中誕生了。實際上,***個實現是在Mac機上。可以說,Python是從ABC發展起來,主要受到了Modula-3(另一種相當優美且強大的語言,為小型團體所設計的)的影響。并且結合了Unix shell和C的習慣。
Python設計語言中的定位很多大規模軟件開發計劃例如 Zope, Mnet 及 BitTorrent. Google都在廣泛地使用它。 通常認為,Python是一種解釋性的語言,但是這種說法是不正確的。
實際上,Python在執行時,首先會將.py文件中的源代碼編譯成Python的byte code(字節碼),然后再由Python Virtual Machine來執行這些編譯好的byte code。這種機制的基本思想跟Java,.NET是一致的。然而,Python Virtual Machine與Java或.NET的Virtual Machine不同的是,Python的Virtual Machine是一種更高級的Virtual Machine。
這里的高級并不是通常意義上的高級,不是說Python的Virtual Machine比Java或.NET的功能更強大,而是說和Java 或.NET相比,Python的Virtual Machine距離真實機器的距離更遠。或者可以這么說,Python的Virtual Machine是一種抽象層次更高的Virtual Machine。
基于C的Python編譯出的字節碼文件,通常是.pyc格式。在實際開發中,python常被昵稱為膠水語言,這不是說他會把你的手指粘住,而是說他能夠很輕松的把用其他語言制作的各種模塊(尤其是C/C++)輕松地聯結在一起。
常見的一種應用情形是,使用python快速生成程序的原型(有時甚至是程序的最終界面),然后對其中有特別要求的部分,用更合適的語言改寫,比如3D游戲中的圖形渲染模塊,速度要求非常高,就可以用C++重寫。
【編輯推薦】