關(guān)于Python腳本語(yǔ)言進(jìn)行學(xué)習(xí)介紹
如果你要覺(jué)得你的操作程序變得越來(lái)越大,為了便于修改和維護(hù),可以把你想要操作的程序分為幾個(gè)模塊,首先要?jiǎng)?chuàng)建一個(gè)模塊,把先關(guān)的Python腳本放入一個(gè)文件,這個(gè)文件名就是模塊名。
import語(yǔ)句創(chuàng)建一個(gè)新的名字空間,該空間包含模塊中所有定義對(duì)象的名稱(chēng)。要訪問(wèn)這個(gè)名字空間,把模塊名作為一個(gè)前綴來(lái)使用這個(gè)模塊內(nèi)的對(duì)象,就像上邊例子中那樣:div.divide()
Python腳本和模塊都是一個(gè)以.py結(jié)束的文件,那程序是如何判斷一個(gè).py文件是作為腳本還是模塊呢?關(guān)鍵是一個(gè)名為_(kāi)_name__的變量,如果它的值是__main__,則是作為腳本直接運(yùn)行,否則是做為模塊運(yùn)行的。
init__ 函數(shù)是每次生成類(lèi)的時(shí)候都會(huì)執(zhí)行的, self 指向類(lèi)對(duì)象自身 記住, 類(lèi)函數(shù)(或者叫做方法) 它的第一個(gè)參數(shù) "self" 不要忘記寫(xiě)了
1) 命名規(guī)范類(lèi)的首字母大寫(xiě)
2) 函數(shù)和變量盡量全小寫(xiě), 單詞間下劃線
3) 類(lèi)里面 "單下劃線" 開(kāi)始的成員變量叫做保護(hù)變量, 意思是只有類(lèi)對(duì)象和子類(lèi)對(duì)象自己能訪問(wèn)到這些變量;
4) 而 "雙下劃線" 開(kāi)始的是私有成員, 意思是只有類(lèi)對(duì)象自己能訪問(wèn), 連子類(lèi)對(duì)象也不能訪問(wèn)到這個(gè)數(shù)據(jù) 。
Python腳本的創(chuàng)始人為Guido van Rossum。1989年圣誕節(jié)期間,在阿姆斯特丹,Guido為了打發(fā)圣誕節(jié)的無(wú)趣,決心開(kāi)發(fā)一個(gè)新的腳本解釋程序。做為 ABC 語(yǔ)言的一種繼承。之所以選中 Python(大蟒蛇的意思)作為程序的名字。
是因?yàn)樗且粋€(gè)Monty Python的飛行馬戲團(tuán)的愛(ài)好者。ABC是由Guido參加設(shè)計(jì)的一種教學(xué)語(yǔ)言。就Guido本人看來(lái),ABC 這種語(yǔ)言非常優(yōu)美和強(qiáng)大,是專(zhuān)門(mén)為非專(zhuān)業(yè)程序員設(shè)計(jì)的。
但是ABC語(yǔ)言并沒(méi)有成功,究其原因,Guido 認(rèn)為是非開(kāi)放造成的。Guido 決心在 Python 中避免這一錯(cuò)誤(的確如此,Python 與其它的語(yǔ)言如C、C++和Java結(jié)合的非常好)。同時(shí),他還想實(shí)現(xiàn)在 ABC 中閃現(xiàn)過(guò)但未曾實(shí)現(xiàn)的東西。
就這樣,Python在Guido手中誕生了。實(shí)際上,第一個(gè)實(shí)現(xiàn)是在Mac機(jī)上。可以說(shuō),Python是從ABC發(fā)展起來(lái),主要受到了Modula-3(另一種相當(dāng)優(yōu)美且強(qiáng)大的語(yǔ)言,為小型團(tuán)體所設(shè)計(jì)的)的影響。并且結(jié)合了Unix shell和C的習(xí)慣。
Python在編程語(yǔ)言中的定位很多大規(guī)模軟件開(kāi)發(fā)計(jì)劃例如 Zope, Mnet 及 BitTorrent. Google都在廣泛地使用它。 通常認(rèn)為,Python是一種解釋性的語(yǔ)言,但是這種說(shuō)法是不正確的,實(shí)際上,Python腳本在執(zhí)行時(shí),首先會(huì)將.py文件中的源代碼編譯成Python的byte code(字節(jié)碼)。
然后再由Python Virtual Machine來(lái)執(zhí)行這些編譯好的byte code。這種機(jī)制的基本思想跟Java,.NET是一致的。然而,Python Virtual Machine與Java或.NET的Virtual Machine不同的是,Python的Virtual Machine是一種更高級(jí)的Virtual Machine。
這里的高級(jí)并不是通常意義上的高級(jí),不是說(shuō)Python的Virtual Machine比Java或.NET的功能更強(qiáng)大,而是說(shuō)和Java 或.NET相比,Python的Virtual Machine距離真實(shí)機(jī)器的距離更遠(yuǎn)。或者可以這么說(shuō),Python的Virtual Machine是一種抽象層次更高的Virtual Machine。
【編輯推薦】

















