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