post

Python zh-tw:Preface

Python 語言是少數能理直氣壯地宣稱自己是「既簡單又強大」的程式語言。 因為簡單,所以 Python 語言適合初學者; 因為強大,所以 Python 語言也適合專家。更加重要的是:使用 Python 語言寫程式,能讓程式設計成為一件愉快的事。本書撰寫的目的,就是協助你學習這門美妙的語言,與如何快捷又方便地完成任務。

Contents

本書的讀者

本書作為 Python 程式語言的學習指南或教學課程,主要針對初學者而設計。 本書對於擁有其他程式語言經驗,但卻剛接觸 Python 語言的程式設計師,也同樣地有用。

即使你對電腦的瞭解,還只停留在如何用電腦編輯文件的階段,你也可以透過本書來學習如何使用 Python 程式語言。 假使你已經有一些寫作程式的經驗,那麼這本書也能幫助你更快地熟悉 Python 語言的特性。

如果你是個有經驗的程式設計師,本書也會指出 Python 語言,與其他你所喜愛的程式語言之間的區別 — 我真的會指出不少的區別喔!最後,別怪我沒先點醒你,Python 語言,很快就會成為你所愛用的程式語言囉!

本書的由來

我剛開始接觸 Python 語言是在 2002 年,我在大學裡寫的專題(代號為 “Diamond” (鑽石))正好需要一個安裝程式。當時我得從Python 程式語言或 Perl 程式語言兩者之中選擇一個作為 Qt 圖形介面函式庫的繫結。

當我在網上研究過一些相關資訊後,我找到一篇 Eric S Raymond (軟體界大師級的人物) 所寫的 “Why Python?” (為什麼選擇 Python?),這是一篇關於 Python 怎麼成為他最喜歡的程式語言的文章。接著,我又找到 ‘PyQt’ 這個 Qt 的 Python 繫結模組。在當時來說,PyQt 模組較 Perl-Qt 模組更為成熟。因此我決定Python 程式語言就是我要的了。

決定後,我開始尋找一本用來學習 Python 語言的書 — 當時,我竟然找不到一本合適的! 我確實找到了一些歐萊禮 (O’Reilly) 出版社出版的書,然而這些書不是太貴,不然就是寫得像一本參考手冊,而不是像一本學習指南。 所以最後我決定來看 Python 程式語言附帶的官方說明文件。然而官方文件還是太精簡了。官方的文件確實很好地傳達了 Python 語言的概念,但是介紹得稍嫌簡略,不夠全面。靠著我以前已經有過一些程式設計的經驗,所以我還是讀懂了那些文件。但是我覺得,那些文件並不適合程式設計初學者來閱讀。

大約在我首次接觸 Python 語言的六個月後,我安裝了當時最新版的 Red Hat 9.0 Linux 與它嶄新的 KDE 桌面。當我興奮地把玩著 KDE 中所附帶的 KWord 文書處理程式時,我突然想用這個文書處理程式寫下一些關於 Python 的東西。剛開始只是寫下幾頁。然而很快地,我發現我已經寫好超過 30 頁了。因此我開始認真地想辦法將它寫成一本書。經過多次的改進和重寫,它終於成為了有用的 Python 語言學習指南。我決定把本書貢獻回開放原始碼社群。

本書源自於我的個人 Python 學習筆記,而且我現在還是抱持著這樣的心情來維護它。不過我也盡力使它更符合其他人的口味。

在開放原始碼精神下,我收到了許多建設性的建議、批評以及來自熱心讀者的回響,他們的協助使得本書得到極大的改善。

本書目前的狀況

上一個主要改版日期為 2005 年三月。目前則為了Python 3.0 版釋出改版 (預計在2008年九月釋出)。 因 Python 3.0 版還未正式釋出,本書也仍然在進一步完善中。本持著開放原始碼「早早公開,多多更新」的精神,本書的新版本已經公開並持續地改進中。

本書需要像你這樣的讀者來指出書中的錯謬之處。請將你的評論或建議寫信給作者給譯者

想在簡單易學和提供完整詳盡的資訊之間取得平衡,一直是科技寫作的永恆掙扎。 期望讀者您能提供一些反饋,讓作者能更好地掌握主題深入的程度。

官方網站

本書的官方網站在 http://www.swaroopch.com/notes/Python . 在網站上,您可以在線上直接閱讀本書、下載本書最新版檔案,或者寫信給譯者或作者。

版權宣告

  1. 本書採用 Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported 授權。

簡而言之,您可自由重製、散布、展示及演出本著作, 或創作衍生著作。惟需保留作者的姓名標示。若您改變、轉變或改作本著作,僅在遵守與本著作相同的授權條款下,您始得散布由本著作而生的衍生著作。

    • This means:
      • You are free to Share i.e. to copy, distribute and transmit this book
      • You are free to Remix i.e. to adapt this book
    • Under the following conditions:
      • Attribution. You must attribute the work in the manner specified by the author or licensor (but not in any way that suggests that they endorse you or your use of this book).
      • Noncommercial. You may not use this work for commercial purposes.
      • Share Alike. If you alter, transform, or build upon this work, you may distribute the resulting work only under the same or similar license to this one.
    • For any reuse or distribution, you must make clear to others the license terms of this book.
    • Any of the above conditions can be waived if you get permission from the copyright holder.
    • Nothing in this license impairs or restricts the author’s moral rights.
  1. Attribution must be shown by linking back to http://www.swaroopch.com/notes/Python and clearly indicating that the original text can be fetched from this location.
  2. All the code/scripts provided in this book is licensed under the 3-clause BSD License unless otherwise noted.
  3. Volunteer contributions to this original book must be under this same license and the copyright must be assigned to the main author of this book.

反饋

我費了很多心力,讓本書在保持趣味的同時,也兼顧到內容的正確性。
如果,你發現其中的一些內容不正確,或是應該改進,請不吝告知我,好讓我能繼續完善本書。你可以直接透過使用者頁面聯絡到我。

致謝

有兩種設計軟體的方式,一種設計方式是將軟體設計得很簡單,因此很明顯地沒有缺點;

另一種設計方式是將軟體設計得很複雜,因此看不出明顯的缺點。

— C. A. R. Hoare

比起期望擁有天才和機會,成功的人生更需要專注努力與堅持不懈

— C. W. Wendte