這篇文章主要介紹“Python語言的標(biāo)準(zhǔn)庫有哪些”,在日常操作中,相信很多人在Python語言的標(biāo)準(zhǔn)庫有哪些問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”Python語言的標(biāo)準(zhǔn)庫有哪些”的疑惑有所幫助!接下來,請跟著小編一起來學(xué)習(xí)吧!
公司主營業(yè)務(wù):成都網(wǎng)站設(shè)計(jì)、成都做網(wǎng)站、移動(dòng)網(wǎng)站開發(fā)等業(yè)務(wù)。幫助企業(yè)客戶真正實(shí)現(xiàn)互聯(lián)網(wǎng)宣傳,提高企業(yè)的競爭能力。創(chuàng)新互聯(lián)是一支青春激揚(yáng)、勤奮敬業(yè)、活力青春激揚(yáng)、勤奮敬業(yè)、活力澎湃、和諧高效的團(tuán)隊(duì)。公司秉承以“開放、自由、嚴(yán)謹(jǐn)、自律”為核心的企業(yè)文化,感謝他們對我們的高要求,感謝他們從不同領(lǐng)域給我們帶來的挑戰(zhàn),讓我們激情的團(tuán)隊(duì)有機(jī)會(huì)用頭腦與智慧不斷的給客戶帶來驚喜。創(chuàng)新互聯(lián)推出翠屏免費(fèi)做網(wǎng)站回饋大家。
SQLObject
SQLObject 可以看做是Python領(lǐng)域的Hibernate。它也是目前python社區(qū)中最為成熟方便的O/R mapping工具。和Hibernate相比,SQLObject 利用了動(dòng)態(tài)語言的獨(dú)有特性,通過靈活使用繼承、靈活使用MetaData?能力,能夠快速方便定義直接在程序中定義映射類,不用像Hibernate中那樣還需單獨(dú)定義一個(gè)XML文件。同樣,借助強(qiáng)大的動(dòng)態(tài)能力,SQLObject 還擁有一個(gè)Hibernate所遠(yuǎn)不及的功能,那就是SQLObject 的映射類可以在運(yùn)行時(shí)動(dòng)態(tài)改變自身結(jié)構(gòu),這也意味著數(shù)據(jù)庫中的表結(jié)構(gòu)也可以在運(yùn)行時(shí)進(jìn)行改變??傊?,對Hibernate略有了解的開發(fā)者均能迅速理解SQLObject。雖然我一直認(rèn)為SQLObject 還遠(yuǎn)未能將Python 的動(dòng)態(tài)能力發(fā)揮到***。不過這卻是一個(gè)良好的開始。也許我們可以在不久將來看到更多更具新意的O/R mapping 工具。
TurboGear?
自RoR(Ruby on Rails)在Web開發(fā)領(lǐng)域一夜成名后,在其它語言社區(qū),跟風(fēng)之作也如雨后春筍一般涌現(xiàn)出來。雖然TurboGear?并非刻意模仿RoR 之作,不過它確確實(shí)實(shí)借著RoR流行潮流得到更多人的重視。與RoR相同,TurboGear?也是一個(gè)輕量級Web開發(fā)套件,通過幾個(gè)命令行工具能夠快速生成以數(shù)據(jù)庫為核心的基本框架代碼。典型的RoR 思想!這和許多開源框架的原則一樣——“避免重新發(fā)明輪子”。TurboGear?的Web 控制層使用CherryPy?;持久層使用SQLObject;模板使用Kid;AJAX使用MochiKit?。幾乎所有的重要的功能組件都源自第三方。TurboGear?自身更像一個(gè)黏合劑,把所有的功能組合在一起,并能夠形成力量的倍增。
4Suite
雖然Python 標(biāo)準(zhǔn)庫提供了XML處理工具,但是它只提供一些基本功能。如果你想獲得更為強(qiáng)大的XML 處理能力,4Suite是一個(gè)更好的選擇。
4Suite被稱為XML工具中“內(nèi)行的選擇”。除了最基本的Dom-Like和SAX-Like處理庫外,4Suite 還提供XInclude,XPointer,XLink,XPath,XUpdate用于XML文檔的查詢、更新操作等等;提供XSLT完整處理能力。
4Suite不光功能強(qiáng)大,性能也相當(dāng)不錯(cuò)。這主要是得益于其核心代碼部分采用C完成。這在需要處理大量XML文檔的地方,4Suite實(shí)在是一個(gè)***的選擇。
Pyro
Pyro 的全稱是“Python Remote Objects”。按照字面即可理解Pyro 的功能:提供遠(yuǎn)程對象。Pyro 為Python語言提供異常簡潔的RPC解決方案。其實(shí)Python語言中不乏一些更加通用的遠(yuǎn)程調(diào)用方案,例如都是基于XML 的XMLRPC和SOAP。那么 Pyro這樣的單純的Python遠(yuǎn)程調(diào)用方案具有什么樣的優(yōu)勢呢?那就是性能與易用性。
由于動(dòng)態(tài)語言具有強(qiáng)大反射能力,因此實(shí)現(xiàn)對象序列化對于Python來說簡直易如反掌。對象的序列化在Python中被稱為pickle,這是許多Python應(yīng)用的核心機(jī)制。Pyro 也正是充分利用pickle 的威力,在網(wǎng)絡(luò)間提供遠(yuǎn)程對象的調(diào)用。它的性能要遠(yuǎn)遠(yuǎn)超過使用XML 對遠(yuǎn)程對象進(jìn)行編碼/解碼。同時(shí),它在接口調(diào)用設(shè)計(jì)上也非常簡潔。在服務(wù)器端和客戶端只需2、3 行代碼就完成對象的封裝與調(diào)用,遠(yuǎn)比SOAP來得簡單輕松。
Twisted
上個(gè)月,Zope 3.2發(fā)布,在這個(gè)***版中, 一個(gè)重要的變化就是:使用了近十年的處理Web請求的網(wǎng)絡(luò)框架代碼被放棄,取而代之是以Twisted 為核心實(shí)現(xiàn)的代碼。據(jù)稱這樣可以改善系統(tǒng)性能以及可擴(kuò)展性。于是Twisted庫再一次成為了人們關(guān)注的焦點(diǎn)。 Twisted 的核心概念是非阻塞異步網(wǎng)絡(luò)服務(wù)器(所以它也被成為Python中ACE,如果你還不知道什么是 ACE,那么看看前面關(guān)于C++庫的文章),這是目前為止性能***的網(wǎng)絡(luò)處理模型。也許是非阻塞異步處理的天生復(fù)雜性所致,Twisted 幾乎是我所見過的最復(fù)雜,最難用的Python庫。Twisted 的使用者需要面對大量新的概念和新的模式,這一點(diǎn)上和ACE 倒頗有幾分相似。陡峭的學(xué)習(xí)曲線,阻礙了很多人掌握Twisted 庫。這也許是想要獲得高性能所付出的必要代價(jià)。難怪 O’REYLLI在其出版的關(guān)于Twisted的書的封面引用了一只九頭怪蛇,還真是貼切。
Psyco
贊美Python的好話可以說一籮筐,那么它的缺點(diǎn)是什么?這還用問嗎,當(dāng)然是性能。性能——已經(jīng)成為Python根深蒂固的老毛病了。不要說和C++/Java/C#這樣的語言相比,即使是和它的同門兄弟們——Ruby、Perl、PHP 這樣的腳本語言相比,Python的性能依然是最糟糕的。Python的設(shè)計(jì)者們似乎僅僅在乎語言機(jī)制的***,幾乎不考慮性能。CPythony 引擎已經(jīng)發(fā)展了這么多年,查看其源代碼,性能優(yōu)化代碼少之又少。對象引用模型至今還在使用引用計(jì)數(shù)器的方式,至于發(fā)展一個(gè)JIT 引擎,算了吧,不要指望了。還好,Psyco 的出現(xiàn),帶給我們了一線希望。Psyco 通過將運(yùn)行中字節(jié)碼編譯為二進(jìn)制代碼從而大幅提升整個(gè)應(yīng)用的性能,在某些環(huán)境中甚至能將速度提升一個(gè)數(shù)量級。雖然Psyco還不能視為一個(gè)真正意義上的JIT 的引擎,也無法像Java中的JIT 那樣提供完全透明的服務(wù)。但我們?nèi)匀灰獮镻syco的發(fā)展感到振奮。目前,在其***版本中,只需兩行代碼的添加,就能使你的程序充分使用Psyco,從而提升性能。
wxPython
在許多人眼里,動(dòng)態(tài)語言/腳本語言一般僅適合完成命令行或WEB的工作,而在桌面開發(fā)方面實(shí)在是丑陋不堪。而wxPython的出現(xiàn)無疑是給這種偏見以有力的回?fù)簟?/p>
wxPython 實(shí)際上發(fā)展多年的C++框架wxWindow(現(xiàn)已更名為wxWidgets)的Python封裝。而 wxWindow的目標(biāo)是建立一個(gè)跨平臺的GUI 框架。wxWindow 現(xiàn)已能在Windows/Unix/Mac 上良好運(yùn)行。自然wxPython也能橫跨上述幾個(gè)平臺。
wxPython 使用的原生窗口。這就意味著使用wxPython 開發(fā)的GUI 和操作系統(tǒng)本地GUI 系統(tǒng)在界面外觀上沒有任何區(qū)別。如果和Java中GUI庫對比一下,就可以發(fā)現(xiàn),wxPython 更加類似SWT 而不是Swing。因?yàn)镾WT也是使用的原生窗口,想想Eclipse 的界面有多漂亮就知道原生窗口的優(yōu)勢了。
雖然不少C++愛好者對wxWindow框架的設(shè)計(jì)頗有微詞,不過在經(jīng)過Python的封裝后,沒有了指針、沒有了 MFC時(shí)代的事件機(jī)制,wx框架的易用性獲得了極大提升。這也是Python的另一個(gè)巨大魅力所在。
到此,關(guān)于“Python語言的標(biāo)準(zhǔn)庫有哪些”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實(shí)踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識,請繼續(xù)關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編會(huì)繼續(xù)努力為大家?guī)砀鄬?shí)用的文章!