CPython

维基百科,自由的百科全书
跳转至: 导航搜索
CPython
Python logo and wordmark.svg
穩定版本 3.4.1 /
2014年5月18日(5個月前) (2014-05-18)
2.7.8 /
2014年7月1日(3個月前) (2014-07-01)
编程语言 C
平台 跨平台
类型 Python程式語言直譯器
许可协议 Python软件基金会许可证英语Python Software Foundation License
網站 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的GILGlobal Interpreter Lock),它使得CPython不能进行并发编程。[1]要做到并发编程,就必须为每一个线程运行一个解释器。如果这样的话,它们之间的通讯就非常困难。所以社区内一直在讨论是否要从CPython中去除GIL。[2]

注释[编辑]

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

参考[编辑]