強大的Python社區(qū)說明
Python語言還有很多不完善的地方,Python社區(qū)非常活躍,等模塊穩(wěn)定了之后再用C/C++等語言來實現(xiàn)替換Python模塊;下面進行學(xué)習(xí)思考,希望本文能給大家?guī)硐嚓P(guān)有用信息。
稍稍解釋一下程序代碼:setattr(object, name, value)函數(shù)的功能是用來改變object類的name屬性值為value;這里就是改變Test類的fun方法為一個新的方法 replacement,instancemethod(function, instance, class)函數(shù)返回一個方法對象。
注意在python里一切皆對象;可見setattr(…)一個語句就把Test類的fun方法替換成為 changed函數(shù)了,體現(xiàn)了python的簡單強大。 Python語言的執(zhí)行效率跟C/C++/Java比起來要稍遜一籌,但是代碼長度大大縮短,并且Python跨平臺、類庫豐富、語法簡單、開發(fā)速度快。
因此常用Python代替C/Java構(gòu)建大程序,涉及到系統(tǒng)效率的地方可以考慮用C/C++實現(xiàn)。而且Python也可以做glue language(膠水語言),因為Python跟C和Java的溝通能力非常的好。 Python語言的執(zhí)行效率跟C/C++/Java比起來要稍遜一籌,但是代碼長度大大縮短,并且Python跨平臺、類庫豐富、語法簡單、開發(fā)速度快。
因此常用Python代替C/Java構(gòu)建大程序,涉及到系統(tǒng)效率的地方可以考慮用C/C++實現(xiàn)。而且Python也可以做glue language(膠水語言),因為Python跟C和Java的溝通能力非常的好。
Perl原是專門設(shè)計處理文本的,這方面能力***,但是不適合編寫大程序,語法晦澀難懂,與之相比,Python更易閱讀,學(xué)習(xí),可維護性更強,代碼安全性更好(Python的異常處理)。并且與Java語言更好的集成能力;Tcl的語法簡單,和其它程序的交互能力強,可以和C語言集成,而且有tk輔助 GUI開發(fā)。
但是Tcl更多是作為scripting language和glue language,不適合寫大程序,與之相比Python的應(yīng)用范圍要廣闊的多。 Python的正則表達式?jīng)]有Ruby的用著方便,Ruby比Python有更完整的面向?qū)ο蟮恼Z法,Ruby的主要功能都是用類的方法調(diào)用來實現(xiàn)的,不是函數(shù);
另一方面由于Ruby的強大,語言相對Python社區(qū),Ruby沒有內(nèi)省性,缺乏國際化支持,缺乏類似Jython的東西。 Python自身的優(yōu)秀特性決定了其在實際應(yīng)用中的廣泛性??焖僭烷_發(fā);網(wǎng)絡(luò)服務(wù)器腳本;科學(xué)計算;文檔處理;
數(shù)據(jù)庫編程;嵌入開發(fā);GUI開發(fā);游戲開發(fā);移動開發(fā)......Python擁有強大Python社區(qū)的支持,豐富的類庫,以及C/C++/Java等語言提供可擴展模塊。 摩爾定律斷言了處理器、內(nèi)存或者I/O設(shè)備等將不再大幅度影響程序的執(zhí)行效率,對于相當(dāng)一部分的應(yīng)用程序而言,實現(xiàn)同樣的功能。
用系統(tǒng)語言和腳本語言相比,生成代碼的運行效率可能都會在可容忍的范圍內(nèi),但是腳本語言代碼量可能會低很多(Python和Java大約是1:6)。開發(fā)周期更短,而且現(xiàn)在很多常用的功能都已經(jīng)用系統(tǒng)語言實現(xiàn)了,可以作為功能模塊,配合腳本語言的glue功能,即可完成系統(tǒng)實現(xiàn)。
【編輯推薦】