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++重寫。