就語法來看,Python比Perl優(yōu)美得多。Perl里面充滿了像$!和$_這類的天書標記,初學的時候每讀一段代碼,就會碰到幾個從來沒見過的標記,然 后過兩個星期,他們又以全新的面目出現(xiàn)在我面前。在我看來,這決不是什么緊湊,只是瘋狂。不過同樣的尼采,有的人看到的是偉大的哲學家,有的人看到的只是 一個瘋子。
類庫,Python的類庫不如Perl的多。但是這很大程度上是因為Python沒有一個像CPAN這樣的類庫集散地。其實Python的類庫也是很全的,只是要找。SourceForge是一個,此外還有freshmeat。就我自己的經(jīng)驗,有些類庫是無意中找到的。比方說,我看IBM的 developer network,看到一個twisted,安裝的時候讀了它的README,發(fā)現(xiàn)還有pycrypto,和pyopenssl類庫。
如 果你覺得Python的開發(fā)效率還不及C++,那只能說你對Python還是太不熟悉,不過有C++的底子,用不了多久你就會闖過這一關(guān)的。其實 Python的文本處理能力一點都不比Perl遜色。它的re模塊的思路同java的regex很像,而中文處理則要用到codecs。真正學懂之后,你 會覺得Python模塊的邏輯性很強。不像Perl,雖然很方便,但是一個一個模塊之間沒有什么必然的聯(lián)系。
關(guān)于Python的大型項目,最知名的就是Zope,然后有twisted(它既是一個類庫,也是一個framework)。此外還有 gadfly,medusa(其實這兩個是Zope的子項目,但是Perl沒有這個重量級的產(chǎn)品吧),以及Chandler。這些都是純Python的程 序。