膠水語言
先從Helloworld開始。所有學python的童鞋都會從這句話開始:
print"HelloWorld!"。
問題來了:為什么所有語言第一件做的事情,就是HelloWorld?
其實,他代表了UNIX統(tǒng)一的文本處理模型及接口。這些個玩意,Windows的編程領(lǐng)域是很難接觸到的也很難理解的。
下面寫個范例。比如我這么干了:
#file:say.py
importsys
txt=sys.argv[1]
print"Hello%s!"%(txt)
那么我就可以在Linux或Mac的終端上直接輸入:
pythonsay.pyWorld
輸出結(jié)果就會是:
HelloWorld!
這樣就確保了,在終端調(diào)用上的直觀與可編程性。
這樣,我就不用必須在別的python語言里面調(diào)用python了,而能夠直接在shell上跟其它處理程序直接連接。
什么是膠水語言?
膠水語言(gluelanguage)是用來連接軟件組件的程序設(shè)計語言(通常是腳本語言)。
膠水語言的例子:
ShellscriptsPythonRubyLuaTclPerlPHP參見:Category:腳本語言
Gluelanguage(usesOScommands,interfaces,DLLs,sharedlibraries,services,objects,etc.)
膠水語言:使用輸入輸出命令,接口,動態(tài)鏈接庫,靜態(tài)鏈接庫,服務(wù),對象等。
在Python的內(nèi)部機制中有:
標準版本的python是用C來編譯的,又稱為Cpython,除此之外,還有一些其他的python實現(xiàn)。
2.java實現(xiàn)版本。這個解釋器完全用java寫成,名為Jython。盡管和標準版的有區(qū)別,但是很小,而且啟動環(huán)境也完全相同
Jython的優(yōu)點:
(1)只要有虛擬機,就可以運行Jython
(2)擁有訪問java包與類庫的能力
(3)為java開發(fā)環(huán)境提供了腳本引擎
(4)鼓勵Python到j(luò)ava的開發(fā)
3..net實現(xiàn)。用C#語言完成,名為IronPython。和jython差不多。
意義:
在終端上我可以隨意地組合他和其它程序,作為一個中間處理模塊。
而且,他可以如此地簡單便捷,一些簡單的腳本只需要cat一下馬上就能明白是什么意思。
一個表達式一行代碼,代碼塊有一致的標準的縮進,標準的命名方式,簡練的語言,支持注釋……
別的程序要訪問或調(diào)用,很簡單,一個命令把指定數(shù)據(jù)輸入到這里就好,然后要怎么拼接怎么拼接;
周期性地處理也沒問題,輸出到文件,等待別的程序調(diào)用。
系統(tǒng)腳本上:
比SHELL多了很多數(shù)學及字符串處理能力,還多了很多很好用的迭代方法,還多了很多的原生的數(shù)據(jù)結(jié)構(gòu);
比PERL多了很要命的代碼可讀性。
比起ruby和nodejs,他基本所有機器都預(yù)裝,而且已經(jīng)經(jīng)歷了時間的考驗。雖然,將來的確會有被這倆貨代替的可能性。
比起C/C++,他多了一個終端、甚至像ipython這樣的加強版神器終端,可以邊調(diào)試代碼邊把沒問題的代碼寫進文件。而且,源碼即可執(zhí)行。
以上內(nèi)容為大家介紹了python培訓之為什么是膠水語言,希望對大家有所幫助,如果想要了解更多Python相關(guān)知識,請關(guān)注IT培訓機構(gòu):千鋒教育。