“Python”這個(gè)英文單詞的發(fā)音似“派森”,因此中文可以稱(chēng)之為派森。Python是一個(gè)有10年歷史的Windows編程語(yǔ)言。Python的創(chuàng)始人為Guido van Rossum。
Python是一種即譯式的,互動(dòng)的,面向?qū)ο蟮木幊陶Z(yǔ)言,它包含了模組式的操作,異常處理,動(dòng)態(tài)資料形態(tài),十分高層次的動(dòng)態(tài)資料結(jié)構(gòu),以及類(lèi)別的使用。Python揉 合了簡(jiǎn)單的語(yǔ)法和強(qiáng)大的功能。它的語(yǔ)法表達(dá)優(yōu)美易讀。它具有很多優(yōu)秀的腳本語(yǔ)言的特點(diǎn):解釋的,面向?qū)ο蟮模瑑?nèi)建的高級(jí)數(shù)據(jù)結(jié)構(gòu),支持模塊和包,支持多種 平臺(tái),可擴(kuò)展。而且它還支持交互式方式運(yùn)行,圖形方式運(yùn)行。它擁有眾多的編程界面支持各種操作系統(tǒng)平臺(tái)以及眾多的各類(lèi)函數(shù)庫(kù)。利用C和C++可以對(duì)它進(jìn)行擴(kuò)充。個(gè)別的應(yīng)用軟件如果需要有一個(gè)可程序化界面也可以利用它來(lái)做為擴(kuò)展語(yǔ)言用。最后,Python的可移植度非常高:它可以在許多的Unix類(lèi)平臺(tái)上運(yùn)行,在Mac,MS-DOS,視窗Windows,Windows NT,OS/2,BeOS,以至RISCOS上都有相關(guān)的Python版本。
Python核心網(wǎng)站是: http://www.python.org/ ,其中你可以找到很多資料。如果您第一次使用 Python, 可以下載一個(gè)試試。目前,Python已經(jīng)有成百上千的公共資源可以供你調(diào)用。
Python作用
Python可以用在許多場(chǎng)合。當(dāng)你需要大量的動(dòng)態(tài)調(diào)整,要容易使用,功能強(qiáng)大并且富有彈性的情況,Python可以發(fā)揮很好的功效。
一個(gè)宏編程語(yǔ)言
你可以用Python給現(xiàn)有的應(yīng)用程序添加一個(gè)宏語(yǔ)言或底稿編制(scripting)能力。經(jīng)過(guò)稍微的訓(xùn)練,它使用戶(hù)級(jí)別的底稿編制變得簡(jiǎn)單。發(fā)展一種新的語(yǔ)言常常被認(rèn)為是大公司獨(dú)家專(zhuān)利。Python是一個(gè)你可以加入你現(xiàn)有工具的宏語(yǔ)言并適合不同的層次的人使用。
一個(gè)快速的對(duì)象模型和算法的原型開(kāi)發(fā)工具
開(kāi)發(fā)軟件花費(fèi)錢(qián)財(cái)需要很多時(shí)間才能達(dá)到很好的效果。在Python下創(chuàng)建對(duì)象,你可以比我們知道的任何語(yǔ)言用更短的代碼和更少的時(shí)間,并且全部支持繼承,密封和多形性。一個(gè)比較流行的辦法是在Python中原型一個(gè)程序,直到你相信設(shè)計(jì)是正確的再換到C++中,一個(gè)更好的辦法是將Python應(yīng)用程序輪廓化,然后在C++中重寫(xiě)速度至關(guān)重要的部分。
一個(gè)調(diào)試工具
新程序和代碼庫(kù)需要測(cè)試。有經(jīng)驗(yàn)的開(kāi)發(fā)人員知道給一個(gè)新功能或程序建立一個(gè)測(cè)試套件會(huì)節(jié)約時(shí)間并減少麻煩。如果一個(gè)程序可以與輸入輸出文件工作,Python 可以生成輸入,運(yùn)行這個(gè)程序,然后檢查輸出并進(jìn)行分析。如果問(wèn)題在于數(shù)據(jù),你可以編寫(xiě)一次性的腳本來(lái)檢查數(shù)據(jù)是否一致。
數(shù)據(jù)清除和轉(zhuǎn)換
你可能會(huì)將數(shù)據(jù)由一個(gè)數(shù)據(jù)庫(kù)移到一個(gè)新的數(shù)據(jù)庫(kù),或新建一個(gè)界面讓數(shù)據(jù)在互不兼容的系統(tǒng)中流動(dòng)。如果人工來(lái)做,這會(huì)是一個(gè)很繁瑣而且容易犯錯(cuò)誤的過(guò)程,你總會(huì)遺漏東西,到頭來(lái)你還得重做以前的工作。Python對(duì)列表和字典的本地支持使復(fù)雜的數(shù)據(jù)轉(zhuǎn)換更加容易。而且這種交互式模式可以讓編程人員在轉(zhuǎn)換過(guò)程的每一階段觀看數(shù)據(jù)。還可以編寫(xiě)由源到目標(biāo)的數(shù)據(jù)轉(zhuǎn)換的腳本并按需要不斷運(yùn)行,直到它正確完成工作。
Python作為粘合劑
互不兼容的系統(tǒng)常常需要被聯(lián)在一起,而且這個(gè)過(guò)程需要自動(dòng)進(jìn)行。Python支持所有的集成關(guān)鍵技術(shù)。同時(shí)也很好的與文件,協(xié)議,DLLs及COM對(duì)象工作。Python還提供廣泛的庫(kù)幫助你得到幾乎任何種類(lèi)的數(shù)據(jù)。它還是很好的控制其他套件、進(jìn)行系統(tǒng)管理以及控制其他系統(tǒng)數(shù)據(jù)流動(dòng)的工具。
運(yùn)行方式
Python可以以命令行方式運(yùn)行,也可以交互式方式運(yùn)行,還具有圖形集成環(huán)境,這樣開(kāi)發(fā)Python就相當(dāng)方便?,F(xiàn)在已經(jīng)出現(xiàn)了許多用Python編寫(xiě)的可視化編程軟件,用于實(shí)現(xiàn)象Delphi一樣的功能。
面向?qū)ο?/span>
Python是一個(gè)真正的面向?qū)ο笳Z(yǔ)言。它甚至支持異常的處理。如果學(xué)過(guò)Java,應(yīng)該對(duì)這個(gè)不陌生。但其它的腳本語(yǔ)言,如PHP,好象就沒(méi)有。這使得程序的編寫(xiě)更加清晰,而不需要許多的錯(cuò)誤檢查了。
模塊和包
這一點(diǎn)更象是Java。對(duì)于Java的支持,大家可以了解JPython。JPython是用Java寫(xiě)的Python,它完全支持Java,在這個(gè)環(huán)境下使用Python可以隨意地使用Java的類(lèi)庫(kù)。語(yǔ)言擴(kuò)展可以用C、C++或Java為Python編寫(xiě)新的新言模塊,如函數(shù)?;蛘吲cPython直接編譯在一起,或者采用動(dòng)態(tài)庫(kù)裝入方式實(shí)現(xiàn)。也專(zhuān)門(mén)有人編寫(xiě)了一個(gè)工具,可以實(shí)現(xiàn)為Python自動(dòng)實(shí)現(xiàn)函數(shù)接口封裝,這就是SWIG(Simplified Wrapper and Interface Generator),或稱(chēng)做簡(jiǎn)單封裝和接口生成器(可以在http://sourceforge.net/projects/swig/)。
有趣的語(yǔ)法
Guido認(rèn)為Python的語(yǔ)法是非常優(yōu)美的。其中一點(diǎn)就是,塊語(yǔ)句的表示不是C語(yǔ)言常用的{}對(duì),或其它符號(hào)對(duì),而是采用縮近表示法!有趣吧。就這一點(diǎn)來(lái)說(shuō),Guido的解釋是:首先,使用縮近表示法減少了視覺(jué)上的混亂,并且使程序變短,這樣就減少了需要對(duì)基本代碼單元注意的范圍;其次,它減少了程序員的自由度,更有利于統(tǒng)一風(fēng)格,使得閱讀別人的程序更容易。感覺(jué)還是不錯(cuò)的,就C語(yǔ)言來(lái)說(shuō),在if語(yǔ)句后面大括號(hào)的寫(xiě)法就好幾種,不同的人喜歡不同的樣子,還不如統(tǒng)一起來(lái),都不會(huì)看得別扭。
在每個(gè)類(lèi)或函數(shù)的定義后面,第一行可以是說(shuō)明語(yǔ)句,根本不需要注釋符標(biāo)記。對(duì)于后面跟塊語(yǔ)句的語(yǔ)句,后面應(yīng)跟上一個(gè)冒號(hào)。一行語(yǔ)句不能太長(zhǎng),因?yàn)闆](méi)有行結(jié)束符,如果超長(zhǎng)則要使用續(xù)行符(\)。還有一些有趣的比如說(shuō),象下面的一個(gè)比較處理,用C語(yǔ)言為:
if (2
用Python可以表示為
if (2<>
什么是Zope?
Zope是一個(gè)開(kāi)放源代碼的Web應(yīng)用服務(wù)器,采用Python語(yǔ)言開(kāi)發(fā),使用它您可以方便的構(gòu)建內(nèi)容管理、內(nèi)部網(wǎng)、門(mén)戶(hù)網(wǎng)站、和其他的定制應(yīng)用。
? 高度面向?qū)ο蟮?/a>Web開(kāi)發(fā)平臺(tái),采用Python語(yǔ)言開(kāi)發(fā)。
? 可以運(yùn)行在幾乎所有流行的操作系統(tǒng)上,支持多語(yǔ)言。
? 能集成到其他流行的服務(wù)器,也自帶服務(wù)器。
? 提供清晰的數(shù)據(jù)/邏輯/表示的分離。
? 帶有可擴(kuò)展的內(nèi)置對(duì)象和強(qiáng)大的集成安全模塊。
什么是Plone?
Pone是一個(gè)Zope上的一個(gè)用戶(hù)友好、功能強(qiáng)大的開(kāi)放源代碼內(nèi)容管理系統(tǒng)。Plone適合用作內(nèi)部網(wǎng)/外部網(wǎng)的服務(wù)器、文檔發(fā)布系統(tǒng)、門(mén)戶(hù)服務(wù)器和異地協(xié)同群件工具,到目前,Plone其實(shí)已經(jīng)發(fā)展成為了一個(gè)應(yīng)用開(kāi)發(fā)平臺(tái)。
? 是一種功能強(qiáng)大的開(kāi)放源碼(Open Source)內(nèi)容管理系統(tǒng)(CMS)。
? 通過(guò)Web瀏覽器來(lái)訪問(wèn)、編輯內(nèi)容和管理,易于更新內(nèi)容。
? 無(wú)需編程,即可創(chuàng)建新的內(nèi)容類(lèi)型。
? 協(xié)同的編輯和發(fā)布機(jī)制。
Python的IDE開(kāi)發(fā)環(huán)境:
Wingide:http:// www.wingide.com
ipython: http://ipython.scipy.org/