探秘豐富多彩的Python語言
SQLITE是一款非常小巧的嵌入式開源數據庫軟件,也就是說沒有獨立的維護進程,所有的維護都來自于程序本身。它使用一個文件存儲整個數據庫,操作十分方便。它的最大優點是使用方便,功能相比于其它大型數據庫來說,確實有些差距。
但是性能表現上,SQLITE并不遜色。麻雀雖小,五臟俱全, sqlite 實現了多數 sql-92 的標準,比如說 transaction 、 trigger 和復雜的查詢等。使用sqlite的connect可以創建一個數據庫文件,上面我指明了路徑。當數據庫文件不存在的時候,它會自動創建。
如果已經存在這個文件,則打開這個文件。encoding指明保存數據所使用的編碼,這里cp936是 Python 中自帶的編碼,其實就是GBK編碼。cx為數據庫連接對象,由于設計者和開源社區的共同努力,在python中有大量優秀的庫可以被直接調用以高效地完成不同需求的工作。這里列舉一些常見常用的庫:
Tkinter———— Python默認的圖形界面接口。Tkinter是一個和Tk接口的Python模塊,Tkinter庫提供了對Tk API的接口,它屬于Tcl/Tk的GUI工具組。Tcl/Tk是由John Ousterhout發展的書寫和圖形設備。
Tcl(工具命令語言)是個宏語言,用于簡化shell下復雜程序的開發,Tk工具包是和Tcl一起開發的,目的是為了簡化用戶接口的設計過程。Tk工具包由許多不同的小部件,如一個按鈕、一個滾動條等。通過Tk提供的這些小部件,我們就可快速地進行GUI開發。Perl、Scheme等語言也利用Tk庫進行GUI開發。Tkinter是跨平臺,在各種平臺下都能使用。
Python Imaging Library(PIL)————python提供強大的圖形處理的能力,并提供廣泛的圖形文件格式支持,該庫能進行圖形格式的轉換、打印和顯示。還能進行一些圖形效果的處理,如圖形的放大、縮小和旋轉等。是Python用戶進行圖象處理的強有力工具。
Pmw(Python megawidgets)Python超級GUI組件集————一個在python中利用Tkinter模塊構建的高級GUI組件,每個Pmw都合并了一個或多個Tkinter組件,以實現更有用和更復雜的功能。
PyXML———— 用Python解析和處理XML文檔的工具包,包中的4DOM是完全相容于W3C DOM規范的。它包含以下內容:xmlproc: 一個符合規范的XML解析器。Expat: 一個快速的,非驗證的XML解析器。
還有其他和他同級別的還有 PyHtml PySGMLPyGame———— 用于多媒體開發和游戲軟件開發的模塊。PyOpenGL———— 模塊封裝了“OpenGL應用程序編程接口”,通過該模塊python程序員可在程序中集成2D和3D的圖形。
Python容易擴展和嵌入。Python提供的許多標準模塊支持C或者C++接口。Python和C可以一起工作,它可以嵌入到C或者C++的應用程序當中,因此可用Python語言為應用程序提供腳本接口,由于支持跨語言開發,可用Python設計概念化應用程序,并逐步移植到C,使用前不必用C重寫應用程序。
(Jython使Python可以和Java一起工作,使開發者可以在Python里面調Java的包,也可以在Java里面使用Python的對象。
還有更妙的,由于Jython的解釋器完全用Java編寫,因此可以在支持Java的任何平臺上部署Python程序,甚至WEB瀏覽器也可以直接運行Python腳本。)在某個C++應用程序中,我們用一組插件來實現一些具有統一接口的功能,我們使用Python來代替動態鏈接庫形式的插件。
這樣可以方便地根據需求的變化改寫腳本代碼,而不是必須重新編譯鏈接二進制的動態鏈接庫。Python強大的功能足以勝任,但是有一些操作系統特定的功能需要用C++來實現,再由Python調用。所以,最基礎地,我們需要做到:
1. 把Python嵌入到C++應用程序中,在C++程序中調用Python函數和獲得變量的值;
2. 用C++為Python編寫擴展模塊(動態鏈接庫),在Python程序中調用C++開發的擴展功能函數。
Python 具有腳本語言中最豐富和強大的類庫,足以支持絕大多數日常應用。它的名字來源于一個喜劇,也許最初設計Python這種語言的人并沒有想到今天Python會在工業和科研上獲得如此廣泛的使用。
著名的自由軟件作者Eric Raymond在他的文章《如何成為一名黑客》中,將Python列為黑客應當學習的四種編程語言之一,并建議人們從Python開始學習編程。這的確是一個中肯的建議,對于那些從來沒有學習過編程或者并非計算機專業的編程學習者而言,Python是最好的選擇之一。
【編輯推薦】