簡(jiǎn)單--Python是一種代表簡(jiǎn)單主義思想的語(yǔ)言。閱讀一個(gè)良好的Python程序就感覺(jué)像是在讀英語(yǔ)一樣,盡管這個(gè)英語(yǔ)的要求非常嚴(yán)格!Python的這種偽代碼本質(zhì)是它最大的優(yōu)點(diǎn)之一。它使你能夠?qū)W⒂诮鉀Q問(wèn)題而不是去搞明白語(yǔ)言本身。
易學(xué)--就如同你即將看到的一樣,Python極其容易上手。前面已經(jīng)提到了,Python有極其簡(jiǎn)單的語(yǔ)法。
免費(fèi)、開(kāi)源--Python是FLOSS(自由/開(kāi)放源碼軟件)之一。簡(jiǎn)單地說(shuō),你可以自由地發(fā)布這個(gè)軟件的拷貝、閱讀它的源代碼、對(duì)它做改動(dòng)、把它的一部分用于新的自由軟件中。FLOSS是基于一個(gè)團(tuán)體分享知識(shí)的概念。這是為什么Python如此優(yōu)秀的原因之一——它是由一群希望看到一個(gè)更加優(yōu)秀的Python的人創(chuàng)造并經(jīng)常改進(jìn)著的。
高層語(yǔ)言--當(dāng)你用Python語(yǔ)言編寫(xiě)程序的時(shí)候,你無(wú)需考慮諸如如何管理你的程序使用的內(nèi)存一類(lèi)的底層細(xì)節(jié)。
解釋性--這一點(diǎn)需要一些解釋。一個(gè)用編譯性語(yǔ)言比如C或C++寫(xiě)的程序可以從源文件(即C或C++語(yǔ)言)轉(zhuǎn)換到一個(gè)你的計(jì)算機(jī)使用的語(yǔ)言(二進(jìn)制代碼,即0和1)。這個(gè)過(guò)程通過(guò)編譯器和不同的標(biāo)記、選項(xiàng)完成。當(dāng)你運(yùn)行你的程序的時(shí)候,連接/轉(zhuǎn)載器軟件把你的程序從硬盤(pán)復(fù)制到內(nèi)存中并且運(yùn)行。而Python語(yǔ)言寫(xiě)的程序不需要編譯成二進(jìn)制代碼。你可以直接從源代碼運(yùn)行程序。在計(jì)算機(jī)內(nèi)部,Python解釋器把源代碼轉(zhuǎn)換成稱為字節(jié)碼的中間形式,然后再把它翻譯成計(jì)算機(jī)使用的機(jī)器語(yǔ)言并運(yùn)行。事實(shí)上,由于你不再需要擔(dān)心如何編譯程序,如何確保連接轉(zhuǎn)載正確的庫(kù)等等,所有這一切使得使用Python更加簡(jiǎn)單。由于你只需要把你的Python程序拷貝到另外一臺(tái)計(jì)算機(jī)上,它就可以工作了,這也使得你的Python程序更加易于移植。
面向?qū)ο?-Python既支持面向過(guò)程的編程也支持面向?qū)ο蟮木幊?。在“面向過(guò)程”的語(yǔ)言中,程序是由過(guò)程或僅僅是可重用代碼的函數(shù)構(gòu)建起來(lái)的。在“面向?qū)ο蟆钡恼Z(yǔ)言中,程序是由數(shù)據(jù)和功能組合而成的對(duì)象構(gòu)建起來(lái)的。與其他主要的語(yǔ)言如C++和Java相比,Python以一種非常強(qiáng)大又簡(jiǎn)單的方式實(shí)現(xiàn)面向?qū)ο缶幊獭?/p>
可擴(kuò)展性--如果你需要你的一段關(guān)鍵代碼運(yùn)行得更快或者希望某些算法不公開(kāi),你可以把你的部分程序用C或C++編寫(xiě),然后在你的Python程序中使用它們。
豐富的庫(kù)--Python標(biāo)準(zhǔn)庫(kù)確實(shí)很龐大。它可以幫助你處理各種工作,包括正則表達(dá)式、文檔生成、單元測(cè)試、線程、數(shù)據(jù)庫(kù)、網(wǎng)頁(yè)瀏覽器、CGI、FTP、電子郵件、XML、XML-RPC、HTML、WAV文件、密碼系統(tǒng)、GUI(圖形用戶界面)、Tk和其他與系統(tǒng)有關(guān)的操作。記住,只要安裝了Python,所有這些功能都是可用的。這被稱作Python的“功能齊全”理念。除了標(biāo)準(zhǔn)庫(kù)以外,還有許多其他高質(zhì)量的庫(kù),如wxPython、Twisted和Python圖像庫(kù)等等。
規(guī)范的代碼--Python采用強(qiáng)制縮進(jìn)的方式使得代碼具有極佳的可讀性。
劣勢(shì)
運(yùn)行速度,有速度要求的話,用C++改寫(xiě)關(guān)鍵部分吧。
國(guó)內(nèi)市場(chǎng)較小(國(guó)內(nèi)以Python來(lái)做主要開(kāi)發(fā)的,目前只有一些web2.0公司)。但時(shí)間推移,目前很多國(guó)內(nèi)軟件公司,尤其是游戲公司,也開(kāi)始規(guī)模使用他。
中文資料匱乏(好的Python中文資料屈指可數(shù),現(xiàn)在應(yīng)該變多了)。托社區(qū)的福,有幾本優(yōu)秀的教材已經(jīng)被翻譯了,但入門(mén)級(jí)教材多,高級(jí)內(nèi)容還是只能看英語(yǔ)版。
構(gòu)架選擇太多(沒(méi)有像C#這樣的官方.net構(gòu)架,也沒(méi)有像ruby由于歷史較短,構(gòu)架開(kāi)發(fā)的相對(duì)集中。RubyonRails構(gòu)架開(kāi)發(fā)中小型web程序天下無(wú)敵)。不過(guò)這也從另一個(gè)側(cè)面說(shuō)明,python比較優(yōu)秀,吸引的人才多,項(xiàng)目也多。
以上內(nèi)容為大家介紹了python的優(yōu)勢(shì)和劣勢(shì),希望對(duì)大家有所幫助,如果想要了解更多Python相關(guān)知識(shí),請(qǐng)關(guān)注IT培訓(xùn)機(jī)構(gòu):千鋒教育。http://m.2667701.com/