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