Python@TW: 會眾| IRC| Planet| 郵件列表| 聯絡我們

Python 是什麼?

Python 是一種泛用性的動態物件導向程式語言。自 1990 年代初由 Guido von Rossum (又常被稱為 GvR 或 BDFL) 創造至今已歷十數年發展,應用於系統管理、網路管理、網路傳輸程式、網頁程式開發、數值分析程式、圖形介面應用程式等方面,均有優秀的表現。

1990 年代初,Guido 在荷蘭的 Stichting Mathematisch Centrum (CWI,見 http://www.cwi.nl/ ),為了開發 ABC 語言的後續版本而創造了 Python。雖然 Guido 被認為是 Python 的主要作者,但也有許多人為此語言作了很多貢獻。

1995 年的時候,Guido 在 Corporation for National Research Initiatives (CNRI,見 http://www.cnri.reston.va.us/) 繼續開發 Python。在這個階段中他發行了幾個 Python 的主要版本。

到了 2000 年 5 月的時候,Python 的開發工作移到了 BeOpen.com,形成了 BeOpen PythonLabs 團隊。在同年的 10 月,PythonLabs 團隊則移到了 Digital Creations 公司 (即現今的 Zope Corporation,見 http://www.zope.com/ )。

最後,Python Software Foundation (PSF,見 http://www.python.org/psf/) 在 2001 年建立,Zope Corporation 也是其中一位資助者。PSF 是一個非營利的組織,專責擁有與 Python 相關的智慧財產權,直到今天。

目前 Python 使用與 GPL 相容的條款進行授權使用,但允許使用者在修改了 Python 的原始碼並重新散佈時,不必附上所修改的原始碼。雖然所有的 Python 發行版都屬於開放原始碼軟體。然而,雖然大部分的 Python 發行版本與 GPL 相容,卻並非全部如此。

跨平台的 Python

Python 除了跨 Windows、Mac OS X、Linux 等常見作業系統平台之外,也可以在 Java 和 .Net 平臺執行。

另外,在最普及的 Windows CE PDA 外,Nokia S60 系列手機上也可以執行 Python 語言喔。

高彈性的 Python

Python 以它的「膠著力」聞名,被稱作「膠水語言」 (Python as a glue)。

Python 與 C/C++ 合作多年,網路遊戲「星戰前夜 (EVE)」用它與 C++ 合作,打造成功商業範例。知名的戰略遊戲「火線交鋒 (Act of war)」也使用 Python 作為連線對戰介面。

透過 Jython,Python 能與 Java 合作愉快。

透過 Iron Python,Python 能與 .Net 合作愉快;Iron Python 的作者任職於微軟。

Python 的應用

Python 不像 Java 那麼知名,但能寫出更加簡潔清晰的程式碼。

Python 使用者來自各個領域。在 [http://cheeseshop.python.org/pypi Python Cheeseshop] 裡,你很容易就可以找到適用於各領域的模組。

以網頁開發為例:

我們可以來看看官方對 [http://www.python.org/about/quotes/ Python 使用領域的說明]。

以 Python 開發的知名軟體

你知道嗎?

[http://www.bittorrent.org/ Bittorrent] 主原始版本是用 Python 寫的。

NASA 使用 Python 語言計算衛星軌道。

愈來愈愛歡迎的原始碼管理程式 ["Trac"] 是用 Python 寫的。常用的 wiki 引擎 MoinMoin、強大的應用程式伺服器 ["Zope"],以及最常用的 mailing list 軟體 [http://www.gnu.org/software/mailman/ Mailman] 也是用 Python 所開發出來的。

以 Python 開發的知名服務

大家常用的 YouTube 網站,大部分使用 Python 語言開發。

Google 用 Python 語言撰寫網路爬蟲 (crawler)。

其它以 Python 開發的系統

[http://matplotlib.sourceforge.net/ Matplotlib] 是類似 Matlab 的自由工程計算/繪圖軟體。

[http://www.salstat.com/ SalStat Statistics] 是類似 SPSS 的自由統計軟體。

[http://bibus-biblio.sourceforge.net/wiki/index.php/Main_Page Bibus Bibliographic software] 是一個書目資料庫,像Endnote一樣,是寫論文的好幫手。

[http://www.gnome.org/projects/straw/ Straw] 一個好用的RSS閱讀器。

[http://www.tortall.net/mu/wiki/Cankiri Cankiri] 在Linux上的畫面錄製軟體

[http://www.pitivi.org/wiki/Main_Page PiTiVi] 非線性影音剪輯

到哪裡下載 Python?

  1. http://www.python.org/ ,這是 Python 的官方網站,也是下載 Python 的好地方。

  2. ActivePython (http://www.activestate.com/products/activepython/) ,這是一個 Python windows 發佈套件,包括 Python 語言核心、zlib, bzip2 壓縮模組、SQLite, Berkeley DB 存取模組 (bsddb)、Tix GUI 元件等。

  3. [http://cheeseshop.python.org/pypi Python Cheeseshop] 裡面列出了兩千種以上的Python程式或模組。

本站提供的 Python 資源

The Zen of Python

["The Zen Of Python"].

聽聽 Python 愛好者怎麼說

["Thinker"]: 我最愛用的語言!

["timchen119"]: 一種易學易用,鼓勵使用者開發易讀程式碼的優雅語言。

["yungyuc"]: {OK}

["marr"]: 像初吻般的感動。

["gasolin"]: 學 python 讓我寫其他語言程式時更清晰.

DrakeGuan: 看到同事開始使用我用 wxPython 寫的程式,心情實在非常的 high。

Python 能用來發射太空梭嗎?

嗯~~ NASA 使用 Python 語言計算衛星軌道,離用來飛太空梭也不遠了?