[Python] 國民程式語言

Python Logo每一個人都該學個程式語言。因為不管應用程式再怎麼先進, 永遠有一些你想做、你想算的東西是沒有程式支援的。Python 簡單易學、功能強大, 是最適合每個人都來學習的程式語言。

 個人電腦還在八位元的時代時, 所有的電腦都有 BASIC, 而幾乎所有的 BASIC 都來自一家我們很熟悉的公司, 那就是微軟。BASIC 幾乎是當時電腦上唯一高階程式語言, 不管什麼應用都是用 BASIC 寫出來 (有時配合一些組合語言)。BASIC 有一個特點, 就是簡單、易學, 而且是全功能的。
 
問題是, 電腦越來越複雜, 有些應用是以前沒有的, 你也不用把一個程式語言燒在 ROM 裡。作業系統也變多, 你找不到一個 BASIC 是免費、跨平台、功能強、使用的人夠多。更不要說, BASIC 有許多自古以來的缺點, 有些缺點在現代的 BASIC 版本有些改善, 但有時你會覺得這些「改善」失去了一點原來 BASIC 的味道。
 
不是每個人都需要學 C++, JAVA。事實上不管國內外, 在 C, C++, JAVA 的課程中失敗率非常高。失敗率不是說當掉的比率, 而是上過課以後真的會開始用 C, C++, JAVA 這樣的比率其實不是那麼高。有一個很重要的原因是, C, C++, JAVA 這類程式語言, 你需要先在一個文字編輯器寫好,  然後編譯, 再來才能執行。執行以後, 你有很大的機會會發現有錯, 然後再來一次: 編輯、編譯、執行。現代的電腦很快, 而且這些語言大都有良好的整合開發環境, 你的痛苦比以前少一點, 不過還是要有比較清楚的思路, 才能寫好一個程式。
 
1. 隨心所欲的計算機
偏偏很多東西, 你是需要邊做邊想的。比如說, 今天你學到複利公式, 你希望算一下本金 10,000 元 (P0), 年利率 2% (r), 每年複利 12 次 (k), 五年 (t) 本利和 (P) 是多少? 複利公式是這樣。
 
複利公式 
 
用電子計算機算也不太好按, 寫個 C++ 或 JAVA 來算, 又太誇張。用 Python 算就容易了。
 
>>> 10000 * (1 + 0.02/12) ** (12*5)
11050.78926530822
 
Python 有互動式的界面, 你很容易可以得到結果。也就是說: 光是用來當計算機, Python 都很有用。
 
2. 快速實現你的想法
在你學的東西越多, 你的公式可能更複雜, 所以需要寫成一個程式。而你學到許多新的東西, 甚至有一些你自己創造出來的想法時, 很可能沒有任何程式可以直接算出來, 所以你必需自己寫。像 Python 這樣的程式語言, 很容易讓你想什麼就寫什麼。C, C++, JAVA 這些程式語言是優秀, 但是你要掌控這樣的程式語言並不容易。即使你很熟悉這些程式語言, Python 還是可以幫你在更短的時間內先試行自己的想法。
 
寫過 “Thinking in C++” 和 “Thinking in JAVA” 的 Bruce Eckel 曾經說
 
"But then I started working with Python and being about 10 times more productive than I've been with C++ and Java..."
 
這就是 Python 的威力!
 
3. Python 夠熱門
選擇一個程式語言, 必需要考慮它是不是夠多人使用。第一個原因當然是要夠多人使用, 這個程式語言才能活下去, 不會到你的電腦更新後, 你發現你的程式語這已經不能使用。更重要的是, 很多人使用, 表示很有機會你想做的東西已有人寫出好的套件給你使用。這是一個良好的程式語言必備的條件! 
 
當然, 有時我們其實只是怕用了一個奇怪的程式語言讓一些「專家」們笑。看一下以下使用 Python 的例子, 我想再笑你的只怕不是專家:
 
(a) Python 是 Google 三大官方語言之一: 其他兩個是 JAVA, C++。另外, Google 的網路應用程式伺服器 Google App Engine, 第一個 (也是目前唯一的) 支援的就是 Python。
(b) 許多名門大學使用 Python: 你搜尋 Python + 你喜歡的名門大學, 會發現許多課程都在用 Python。比如說, Harvard 的 Biophysics; 甚至 MIT 的 Electrical Engineering and Computer Science (有沒有人覺得他們電腦不好, 所以學的語言不夠「高級」?) 在必修 Introduction to Computer Science and Programming 就以 Python 為主要程式語言。
(c) 電影「蜘蛛人」使用過畫 3D 特效的程式 Blender, 程式部份就是用 Python。
(d) YouTube, Plurk 主要是用 Python 寫的。
(e) SAGE 這個可以連結幾乎所有數學軟體的控制程式語言就是 Python。
 
4. 結論
我個人的偏見是, 每一個人都該學一個程式語言。而 Python 很容易學習, 而且是全功能的程式語言, 大概是現今最適合這個目標的。也因為這些特性, 在學習 Python 的過程中, 你很快就可以把你想寫的東西寫出來, 很快就可以寫出一些有意思的程式。

最後更新時間 2009-07-11 10:05:38

留言列表(2)

  1. 鄭岱暘 說:

    咦!pythan長怎樣

    2009-08-21 20:05:21
  2. 蔡炎龍 說:

    Python 是一個程式語言, 所有平台都有免費的可以下載使用。

    2009-09-10 15:34:31
請登入才能留言