# 為什么不使用Perl?
也許你以前并不知道,Perl是另外一種極其流行的開源解釋性編程語言。
如果你曾經嘗試過用Perl語言編寫一個大程序,你一定會自己回答這個問題。在規模較小的時候,Perl程序是簡單的。它可以勝任于小型的應用程序和腳本,“使工作完成”。然而,當你想開始寫一些大一點的程序的時候,Perl程序就變得不實用了。我是通過為Yahoo編寫大型Perl程序的經驗得出這樣的總結的!
與Perl相比,Python程序一定會更簡單、更清晰、更易于編寫,從而也更加易懂、易維護。我確實也很喜歡Perl,用它來做一些日常的各種事情。不過當我要寫一個程序的時候,我總是想到使用Python,這對我來說已經成了十分自然的事。Perl已經經歷了多次大的修正和改變,遺憾的是,即將發布的Perl 6似乎仍然沒有在這個方面做什么改進。
我感到Perl唯一也是十分重要的優勢是它龐大的[CPAN](http://cpan.perl.org)庫——綜合Perl存檔網絡。就如同這個名字所指的意思一樣,這是一個巨大的Perl模塊集,它大得讓人難以置信——你幾乎用這些模塊在計算機上做任何事情。Perl的模塊比Python多的原因之一是Perl擁有更加悠久的歷史。或許我會在[comp.lang.python](http://groups.google.com/groups?q=comp.lang.python)上建議把Perl模塊移植到Python上的計劃。
另外,新的[Parrot虛擬機](http://www.parrotcode.org)按設計可以運行完全重新設計的Perl 6也可以運行Python和其他解釋性語言如Ruby、PHP和Tcl等等。這意味著你將來 或許 可以在Python上使用所有Perl的模塊。這將成為兩全其美的事——強大的CPAN庫與強大的Python語言結合在一起。我們將拭目以待。
- 版權信息
- 前言
- 本書的由來
- 本書目前的狀況
- 約定條款
- 反饋
- 值得思考的一些東西
- 第1章 介紹
- Python的特色
- 為什么不使用Perl?
- 程序員的話
- 第2章 安裝Python
- Windows?用戶
- 概括
- 第3章 最初的步驟
- 使用帶提示符的解釋器
- 挑選一個編輯器
- 使用源文件
- 可執行的Python程序
- 獲取幫助
- 概括
- 第4章 基本概念
- 數
- 字符串
- 變量
- 標識符的命名
- 數據類型
- 對象
- 邏輯行與物理行
- 縮進
- 概括
- 第5章 運算符與表達式
- 運算符
- 運算符優先級
- 表達式
- 概括
- 第6章 控制流
- if語句
- while語句
- for循環
- break語句
- continue語句
- 概括
- 第7章 函數
- 函數形參
- 局部變量
- 默認參數值
- 關鍵參數
- return語句
- DocStrings
- 概括
- 第8章 模塊
- 字節編譯的.pyc文件
- from..import語句
- 模塊的name
- 制造你自己的模塊
- dir()函數
- 概括
- 第9章 數據結構
- 列表
- 元組
- 字典
- 序列
- 參考
- 更多字符串的內容
- 概括
- 第10章 解決問題——編寫一個Python腳本
- 解決方案
- 軟件開發過程
- 概括
- 第11章 面向對象的編程
- self
- 類
- 對象的方法
- __init__方法
- 類與對象的方法
- 繼承
- 概括
- 第12章 輸入/輸出
- 儲存器
- 概括
- 第13章 異常
- try..except
- 引發異常
- try..finally
- 概括
- 第14章 Python標準庫
- sys模塊
- os模塊
- 概括
- 第15章 更多Python的內容
- 單語句塊
- 列表綜合
- 在函數中接收元組和列表
- lambda形式
- exec和eval語句
- assert語句
- repr函數
- 概括
- 第16章 接下來學習什么?
- 探索更多內容
- 概括
- 附錄A 自由/開放源碼軟件(FLOSS)
- 附錄B 關于本書
- 關于作者
- 關于譯者
- 關于簡體中文譯本
- 附錄C 修訂記錄
- 術語表