Skip to main content

Python介紹

Python 語言的特色整理如下 :

  1. Python 是物件導向的直譯式語言 (Interpreter language), 與 Java/C++ 等編譯語言比起來, 省掉了編譯與連結步驟, 簡化了開發流程, 但事實上是把中介碼 byte code 的編譯動作隱藏起來了.
  2. Python 與 Javascript, PHP 等語言一樣均屬於腳本語言 (Scripting language), 其與系統語言 (C/C++) 之差異是 : 系統語言目標是節省系統資源, 提高執行效能 (資訊家電需求), 而腳本語言之目標是節省程式員時間, 提高開發速度 (應用程式需求).
  3. Python 是動態語言 (Dynamic language), 在執行時期才確定資料型別, 這與 Javascript, VBscript, Ruby 等語言是相同的.
  4. Python 是強型別語言 (Strong-typed language), 資料型別須透過顯式型別轉換才能混合運算, 如同 Java.
  5. Python 不是格式自由語言, 採用強制縮排定義程式區塊, 以換行表示敘述結束. 縮排是語法的一部分, 違反縮排規則將無法執行.
  6. Python 是跨平台語言, 早期本身是用 ANSI C 語言撰寫的, 可以在 Unix/Linux/DOS/Windows/Macintosh 等作業系統上執行. Python 程式執行時會編譯成 pycode 中介碼, 與 Java 的 bytecode 類似.
  7. Python 是開放源碼 (Open source) 的.
  8. Python 內建比 Java/C/C++ 還豐富的資料型別, 從而有效地減少程式碼長度.
  9. Python 內建複數型別, 支援複數運算.
  10. Python 是完全物件導向的語言, 不論資料, 字串, 函式, 模組全部都是物件. 完全支援多重繼承, 多型, 過載, 衍生, 與泛型, 使程式碼可重複使用. 同時也有例外處理機制, 具備垃圾回收功能, 自動管理記憶體之使用.
  11. 利用 py2exe, pypy, pyinstaller 可將 Python 原始碼轉成脫離編譯器執行環境的獨立執行程式.
  12. Pyhton 的設計哲學 : 優雅, 明確, 簡單. 希望 "用一種方法, 最好是只有一種方法來做一件事", 而非像 Perl 那樣 "有多種方法來做同一件事", 盡量避免歧義, 因此 Python 原始碼具有高度的可讀性.
  13. Python 雖然被歸類為 "指令碼/描述語言 (Scripting language)", 但其功能遠比 Shell script, Javascript, VBscript 等僅能處理簡單工作之指令碼語言強大, Python 開發者稱其為一種 "高階動態語言".
  14. Python 也被稱為 Glue language (膠合語言), 能夠將其他語言編寫的程式進行整合與封裝.
  15. 大多數 Linux 發行版本都已整合了 Python, 可以在終端機下直接執行 Python.
  16. Python 語言的架構是可延伸的, 並非所有的功能與特性都整合到核心, 而是歸類於其強大的標準函式庫中, 從而避免像 VBscript 那樣臃腫. Python 輕巧的語言核心只包括數字, 字串, 串列, 字典, 檔案等資料型別與函式, 其他額外功能如系統管理, 網路通訊, 文字處理, 資料庫, 圖形介面, XML 等全部由標準函式庫提供. 另外社群還提供豐富的套件, 如 Web 開發, 科學計算等等.
  17. Python 標準函式庫包含多個作業系統功能呼叫函式庫, 透過 pywin32 套件可以存取 Windows API 與 COM 服務; 而透過 IronPython 則可直接呼叫 .Net Framework.
  18. 以 Python 編寫系統管理指令在可讀性, 效能, 重覆使用, 擴充性方面都優於 shell 指令.
  19. Python 已有的實作 : CPython (C), JPython (Java), PyPy (Python), IronPyhon (.Net).

TIOBE 程式語言排行:

https://www.tiobe.com/tiobe-index/