CPython

CPython是用C语言实现的Python解释器。作为官方实现,它是最广泛使用的Python解释器。除了CPython以外,还有用Java实现的Jython,用.NET实现的IronPython,使Python方便地和Java程序、.NET程序集成。另外还有一些实验性的Python解释器比如PyPy

CPython
原作者Guido van Rossum
開發者Python Software Foundation
初始版本1994年1月26日1994-01-26
穩定版本
3.9.0
(2020年10月5日2020-10-05
源代码库
编程语言C
系統平台跨平台
类型Python程式語言直譯器
许可协议Python软件基金会许可证
网站Python.org

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. 2nd edition. O'Reilly. 2006: 5–7. ISBN 0-596-10046-9.

参考

  1. . [2021-02-05]. (原始内容存档于2008-09-14).
  2. . [2009-05-30]. (原始内容存档于2009-05-31).
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.