python應用領域介紹
Python作為一種功能強大且通用的程式設計語言而廣受好評,它具有非常清晰的文法特點,適用於多種作業系統,目前在國際上非常流行,正在得到越來越多的應用。
下面就讓我們一起來看看它的強大功能:
Python(派森),它是一個簡單的、解釋型的、互動、可移植的、物件導向的超進階語言。這就是對Python語言的最簡單的描述。
Python有一個互動開發環境,因為Python是解釋運行,這大大節省了每次編譯的時間。Python文法簡單,且內建有幾種進階資料結構,如字 典、列表等,使得使用起來特別簡單,程式員一個下午就可學會,一般人員一周內也可掌握。Python具有大部分物件導向語言的特徵,可完全進行物件導向編 程。它可以在MS-DOS、Windows、Windows NT、Linux、Soloris、Amiga、BeOS、OS/2、VMS、QNX等多種OS上運行。
程式設計語言
Python語言可以用來作為批處理語言,寫一些簡單工具,處理些資料,作為其他軟體的介面調試等。Python語言可以用來作為函數語言,進行人工智慧 程式的開發,具有Lisp語言的大部分功能。Python語言可以用來作為過程語言,進行我們常見的應用程式開發,可以和VB等語言一樣應用。 Python語言可以用來作為物件導向語言,具有大部分物件導向語言的特徵,常作為大型應用軟體的原型開發,再用C++改寫,有些直接用Python來開 發。
資料庫
Python在資料庫方面也很優秀,可以和多種資料庫進行串連,進行資料處理,從商業型的資料庫到開放源碼的資料庫都提供支援。例如:Oracle,Ms SQL Server等等。有多種介面可以與資料庫進行串連,至少包括ODBC。有許多公司採用著Python+MySql的架構。因此,掌握了Python使你 可以充分利用物件導向的特點,在資料庫處理方面如虎添翼。
Windows編程
Python不僅可以在Unix類型的作業系統上應用,同樣可以在Windows系統裡有很好的表現。通過添加PythonWin模組,就可以通過COM 形式調用和建立各種資源,包括調用註冊表、ActiveX控制項以及各種COM等工作,最常見的例子就是通過程式對Office文檔進行處理,自動產生文檔 和圖表。
通過Python,還可以利用py2exe模組產生exe應用程式。還有許多其他的日常維護和管理工作也可以交給Python來做,從而減少維護的工作 量。利用Python,你還可以開發出象VB,VC,Delphi那樣的GUI程式,但卻可以在多個平台上執行。這在許多方面並不遜色於Java。
多媒體
利用PIL、Piddle、ReportLab等模組,你可以處理圖象、聲音、視頻、動畫等,從而為你的程式添加亮麗的光彩。動態圖表的產生、統計分析圖 表都可以通過Python來完成。另外,還有OpenGL。利用PyOpenGl模組,你可以非常迅速的編寫出三維情境。
科學計算
Python可以廣泛的在科學計算領域發揮獨特的角色。有許多模組可以協助你在計算巨型數組、向量分析、神經網路等方面高效率完成工作。尤其是在教育科研方面,可以發揮出獨特的優勢。
網路編程
Python可以非常方便的完成網路編程的工作,提供了眾多的解決方案和模組,可以非常方便的定製出自己的伺服器軟體,無論是c/s,還是b/s模式,都有很好的解決方案。
工具集:
Soket編程
CGI,Freeform
Zope,CMF,Plone,Silva,Nuxeo CPS...
WebWare
Twisted
CherryPy
SkunkWeb
Quixote
4Suite Server
Spyce
Albatross
Cheetah
mod_python
協議:
http
ftp
gopher
XML-PRC
SOAP
POP
SMTP
圖形化使用者介面
Python可以非常方便的實現GUI編程,通過Tkinter,wxPython,QT等等模組,你就可以根據需要編寫出強大的跨平台的使用者介面程式。
開發環境與編輯器
Python程式的開發工具比較多,目前主要的工具既有IDLE,PythonWin這樣的免費工具, 也有一些商業性的工具。通過這些工具,可以讓你更為快速的完成工作。
整合式開發環境(IDE):
IDLE:這是Python裡邊內建的,基本上可以滿足一般開發需要,請參考cnIDLE。
PythonWin:這是基於Windows平台的編輯開發環境,基本上可以滿足一般開發需要。
PythonWorks Pro
Wing IDE
Komodo
代碼編輯器:
LEO:完全由Python編寫的程式碼編寫協助工具輔助,可運行在多種作業系統中,支援獨特的程式碼管理方式。
gVim:相當專業的代碼編輯器,可運行在多種作業系統中,支援Python擴充。
Emacs:Unix系統中常用的工具。
SciTE:簡單易用的代碼編輯器,支援unicode編輯。
嵌入和擴充
Python可以嵌入到其它應用程式中,也可以通過C/C++編寫擴充模組,從而可以提高程式的運行速度或者完成只有通過C/C++才能完成的工作。現在 Python已經可以和C#相結合,並且結合到Visual Studio裡邊,實現微軟的.Net思想。如果你會C語言,再學習Python,這將是一個非常棒的一種選擇。
如果你掌握了Python,想在Java裡應用它,你可以採用Jython。Jython是採用Java語言實現的Python。這樣,你只 要按照Python的文法,就可以調用Java的各種類庫,快速的編寫出基於Java的程式。也就是通過Jython,編寫Java程式。這樣就可以更為 快速的實現Java的功能。Python在物件導向方面和Java是相通的。
除了c/c++和java, Python 目前還可以和Delphi、VB結合。
遊戲編程
Python在很早的時候就是一種遊戲編程的協助工具輔助。在《星球大戰》中扮演了重要的角色。在“阿貝斯(Abyss)”、“星球之旅(Star Trek)”、“Indiana Jones”超級大片中擔當特技和動畫製作的工業光魔公司(Industrial Light)就採用Python製作商業動畫。目前,通過Python完全可以編寫出非常棒的遊戲程式。
企業與政務應用
目前,Python已經成功的實現企業級應用,在全球,已經有很多公司採用Python進行企業級軟體的開發和應用,比如:ERP和CRM這樣的應用。同時,通過Python技術,成功的實現了許多政務應用。
用Python寫的較大的系統有:
Zope:一個應用程式伺服器,具有內容管理、團隊開發、XML、物件導向、SOAP介面等一系先進特性,且開放源碼。參見:www.zope.com。
Gadfly:一個用Python寫的物件導向關係型資料庫,具有小巧、快速、可移植性好,具有大部分SQL語言特性,且開放源碼。參見:http://www.chordate.com/gadfly.html。
還有一些比較有名的公司也在用Python進行原型的開發,如Microsoft、IBM等,還有:
紅帽(Red Hat )曾用Python和Tk一起成功開發配置和管理作業系統的視覺化介面。整個系統可以全面控制Linux作業系統,並根據使用者選擇對設定檔作自動更新。
Infoseek在其公用搜尋引擎使用了Python。該公司還用Python對其軟體進行定製,使終端使用者能對該網站內容進行方便下載。
感興趣的讀者,可以到www.python.org上下載一個下來試試。
參考資料:http://blog.donews.com/filus/archive/2004/09/08/92746.aspx