CPython

維基百科,自由的百科全書
跳至導覽 跳至搜尋
CPython
File:Python logo and wordmark.svg
原作者Guido van Rossum
開發者Python Software Foundation
首次釋出1994年1月26日,​32年前​(1994-01-26
目前版本
    Module:EditAtWikidata第29行Lua錯誤:attempt to index field 'wikibase' (a nil value)
    原始碼庫
    • {{URL|example.com|可选的显示文本}}
    Module:EditAtWikidata第29行Lua錯誤:attempt to index field 'wikibase' (a nil value)
    程式語言C
    引擎
      Module:EditAtWikidata第29行Lua錯誤:attempt to index field 'wikibase' (a nil value)
      平台跨平台
      類型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不能進行並行程式設計。[1]要做到並行程式設計,就必須為每一個執行緒執行一個直譯器。如果這樣的話,它們之間的通訊就非常困難。所以社群內一直在討論是否要從CPython中去除GIL。[2]

      注釋[編輯]

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

      參考[編輯]

      延伸閱讀[編輯]

      外部連結[編輯]