我第一回體驗(yàn)python是用這種腳本編程語言定制mailman,這是一種郵件列表管理軟件包。最初我對(duì)python那些嚴(yán)格的語法規(guī)則和空格排版可真是厭煩透了。但日子一長(zhǎng),編寫的代碼一多,原來python腳本的語法其實(shí)夠簡(jiǎn)單的,特別容易懂。python真是一種功能強(qiáng)大的工具,每一位開放源代碼程序員都應(yīng)該熟悉和掌握它。
python是什么?
python是一種開放源代碼的腳本編程語言,這種腳本語言特別強(qiáng)調(diào)開發(fā)速度和代碼的清晰程度。它可以用來開發(fā)各種程序,從簡(jiǎn)單的腳本任務(wù)到復(fù)雜的、面向?qū)ο蟮膽?yīng)用程序都有大顯身手的地方。python還被當(dāng)作一種入門程序員最適合掌握的優(yōu)秀語言,因?yàn)樗赓M(fèi)、面向?qū)ο?、擴(kuò)展性強(qiáng)同時(shí)執(zhí)行嚴(yán)格的編碼標(biāo)準(zhǔn)。
python是免費(fèi)的
guido van rossum于1990年開始開發(fā)python,最初的目的無非是一個(gè)自娛的項(xiàng)目。作為monty python的飛行馬戲團(tuán)節(jié)目的愛好者,他給自己開發(fā)的這種編程語言起了現(xiàn)在這個(gè)古怪的名字,中文意思就是大蟒。python最初設(shè)計(jì)為一種取代 amoeba分布式操作系統(tǒng)abc的腳本語言,但不久這種新型編程語言很快就發(fā)展成可以解決相當(dāng)多問題的利器,現(xiàn)在更引入到了多種平臺(tái)。
guido目前還是python軟件基金會(huì)的主席。該組織按照gnu公共許可協(xié)議的要求擁有python的知識(shí)產(chǎn)權(quán)和許可權(quán)。python可以用在多種平臺(tái)上,包括windows、macintosh和各種常見的unix系統(tǒng)。另外針對(duì)palmos 和微軟的pocket pc的相應(yīng)版本也在開發(fā)中。
python品質(zhì)超群
雖然python常用來創(chuàng)建簡(jiǎn)單的腳本,但它采用的編程技術(shù)可不簡(jiǎn)單,比如面向?qū)ο缶幋a、套接字、線程和gui等等。假如你是一位剛?cè)肓鞯某绦騿T,這些特性顯然對(duì)你太有幫助了,因?yàn)槟憧梢院芸焓煜び幸娴木幊陶Z法和編碼實(shí)踐,之后再學(xué)習(xí)其他語言,比如java或者c++等引入的技術(shù)概念就容易多了。腳本可以單獨(dú)執(zhí)行,不過,你還可以通過類文件和各類對(duì)象類型以充分利用這種語言的強(qiáng)大功能。
python區(qū)別于其他面向?qū)ο笳Z言的關(guān)鍵有兩點(diǎn)。首先,python強(qiáng)調(diào)空格和編碼結(jié)構(gòu),從而令開發(fā)者的代碼具有良好的重用性。其次,執(zhí)行腳本之前無須編譯python代碼,這就是它為什么被當(dāng)作腳本語言的原因。
python易于擴(kuò)展
python語言有一個(gè)引人注目的優(yōu)勢(shì),它可以針對(duì)語言無法完成功能的函數(shù)調(diào)用函數(shù)庫。python還具有有些相當(dāng)有用的工具幫助開發(fā)出復(fù)雜的應(yīng)用程序。其中最常用的就是tkinker,這種工具可以實(shí)現(xiàn)跨平臺(tái)的gui開發(fā)。另一種wxpython工具則是對(duì)wxwindows跨平臺(tái)c++框架的擴(kuò)展。wxpython目前已經(jīng)支持windows和linux平臺(tái)。python imaging library可以讓python創(chuàng)建、打開、編輯和修改圖象,包括.gif、.jpeg和.png等。為了了解常用的python擴(kuò)展和應(yīng)用,你不妨訪問下the vaults of parnassus。
python自身還可以嵌入到其他編程語言中。最常見的就是[url=http://www.jython.org/]jython[url],這是一種用java編寫的python解釋器。這樣你就可以同時(shí)利用兩種語言的優(yōu)點(diǎn)。你還可以在強(qiáng)大的java應(yīng)用程序框架中結(jié)合python清晰的語法來創(chuàng)建出依賴于兩種語言庫的應(yīng)用程序。
編碼標(biāo)準(zhǔn)
嚴(yán)格的python語法是初級(jí)程序員忽略這一強(qiáng)大編程語言的最主要原因。和大多數(shù)的其他面向web腳本語言不同的是,python的空白排版不依賴于括號(hào)或者分號(hào)來表示語句結(jié)束,換行和占位符用來描述代碼的可視結(jié)果。這種編程方式乍看之下令人感到厭煩,但卻對(duì)你另有莫大的好處,這就是代碼的可靠性。python這種結(jié)構(gòu)化是建立在下面的理論之上:開發(fā)者的工作時(shí)間機(jī)構(gòu)財(cái)產(chǎn)中最有價(jià)值的財(cái)富。一旦你習(xí)慣了編寫python代碼的規(guī)則。實(shí)際上你就習(xí)慣了一種內(nèi)建的編碼標(biāo)準(zhǔn)。這也正是大多數(shù)python開發(fā)者所依賴的標(biāo)準(zhǔn)。
獲取python
你可以從http://www.python.org或者各類平臺(tái)上的python版本。activestate網(wǎng)站也發(fā)布用于 windows、linux和solaris等平臺(tái)的python庫。
最簡(jiǎn)單的python代碼
下面我們舉例說明python。假設(shè)你目前使用的是windows系統(tǒng),而且已經(jīng)安裝了python,請(qǐng)首先啟動(dòng)idle,也就是python的 gui?,F(xiàn)在處于python shell中(如果你在unix類型的系統(tǒng)上就需要鍵入 python類型指示你的python可執(zhí)行文件)。接著在“>>>”提示符下鍵入:>>>print “hello world”
這個(gè)大家耳熟能詳?shù)某绦蚓驮谄聊簧巷@示出結(jié)果,你還可以如下所示給變量賦值:
>>>myvar = 42
>>>print myvar
在上例中會(huì)顯示結(jié)果42。
如果你開發(fā)的腳本無須在python shell 中直接輸入python就更有用了。程序清單a就包含了一個(gè)hello world腳本的示例,其中編寫了if-else語句。
你可以在命令行上鍵入scriptname.py來執(zhí)行自己的腳本(py是python 腳本的標(biāo)準(zhǔn)文件擴(kuò)展名)。你應(yīng)該能看到正確的顯示結(jié)果。清單a中,跟著if和else之后由占位符縮排的語句就是空白格式化的一部分。
這些很簡(jiǎn)單的示例演示了python清晰的語法。為了了解更多有關(guān)python編程的信息,你不妨查看下python網(wǎng)站上的初學(xué)者指南。如果你不習(xí)慣于上網(wǎng)瀏覽,那么你還可以閱讀o’reilly 和new riders 出版的有關(guān)圖書。比如how to think like a computer scientist : learning with python和python essential reference。
小結(jié)
不論你是一位初學(xué)編程語言以圖增長(zhǎng)自己知識(shí)技能的入門程序員還是為了謀取更大代碼可靠性的perl高手,你都會(huì)發(fā)現(xiàn)python是一種相當(dāng)靈活和強(qiáng)大的編程語言。它可以開發(fā)出各種各樣的應(yīng)用程序,從功能齊備的郵件列表軟件到各種跨平臺(tái)的gui應(yīng)用程序一應(yīng)俱全。
新聞熱點(diǎn)
疑難解答
圖片精選