CPython

本頁使用了標題或全文手工轉換
維基百科,自由的百科全書
CPython
原作者Guido van Rossum
開發者Python Software Foundation
首次釋出1994年1月26日,​30年前​(1994-01-26
目前版本
  • 3.12.0 (2023年10月2日)[1]
編輯維基數據連結
原始碼庫 編輯維基數據連結
程式語言C
平台跨平台
類型Python程式語言直譯器
特許條款Python軟件基金會特許條款
網站Python.org

CPython是用C語言實作的Python直譯器。作為官方實作,它是最廣泛使用的Python直譯器。除了CPython以外,還有用Java實作的Jython,用.NET實作的IronPython,使Python方便地和Java程式、.NET程式整合。另外還有一些實驗性的Python直譯器比如PyPy[1]

CPython是使用位元組碼直譯器,任何程式原始碼在執行之前先要編譯成位元組碼。它還有和幾種其它語言(包括C語言)互動的外部函數介面

支援的平台[編輯]

類Unix

* AIX
* BSD
* Darwin
* FreeBSD
* HP-UX
* IRIX 5以及更高版本
* 九號計劃
* Mac OS X
* NetBSD
* Linux
* OpenBSD
* Solaris
* Tru64
*其它Unix
桌面作業系統

* AROS
* AtheOS
* BeOS
* Windows
* Windows NT
* OS/2
* RISC OS
特殊的和嵌入式

* GP2X
* iPodLinux
* Nintendo DS
* Nintendo Gamecube
* Symbian OS Series60
* Nokia 770 Internet Tablet
* Nokia N800
* Nokia N810
* Palm OS
* PlayStation 2
* PlayStation 3(Linux)
* Psion
* QNX
* Sharp Zaurus
* Xbox/XBMC
* VxWorks
* Openmoko
大型電腦和其它

* OS/390
* VMS
* z/OS

曾經支援的平台[編輯]

PEP 11頁面存檔備份,存於互聯網檔案館)列出了CPython停止支援的平台。

  • DOS(2.0開始停止支援)
  • IRIX 4(2.3開始停止支援)
  • Mac OS 9(2.4開始停止支援)
  • MINIX(2.3開始停止支援)

非官方的移植[編輯]

這些版本沒有進入Python軟件基金會的官方版本,這些版本包含了為特定平台提供的模組,如為PSP提供的圖像和聲音API以及為S60提供的SMS和照相機API。

並行問題[編輯]

多處理器的電腦上使用CPython的主要問題來自CPython的全域直譯器鎖(Global Interpreter Lock,GIL),它使得CPython不能進行並行程式設計。[2]要做到並行程式設計,就必須為每一個線程執行一個直譯器。如果這樣的話,它們之間的通訊就非常困難。所以社區內一直在討論是否要從CPython中去除GIL。[3]

註釋[編輯]

  1. ^ Martelli, Alex. Python in a Nutshell 2nd edition. O'Reilly. 2006: 5–7. ISBN 0-596-10046-9. 

參考[編輯]

延伸閱讀[編輯]

  • Shaw, Anthony. CPython Internals: Your Guide to the Python 3 Interpreter. Real Python. 2021. ISBN 9781775093343. 

外部連結[編輯]