[Python]解释器的几种实现版本

Python解释器的几种实现版本

我们都知道python的解释器有很多种实现方式,有C的,java的,还有python的等等,对应的也就是Cpython,Jython,一直比较火的PyPy ,今天就来盘点下这些版本(不一定非常全)

CPython

CPython 是默认的python实现,环境或者是解释器(你喜欢哪个就那么叫)。脚本大多数情况下都运行在这个解释器中。 CPython是官方的python解释器,完全按照python的规格和语言定义来实现,所以被当作其他版本实现的参考版本。CPython是用C语言写的,当执行代码的时候Pythond代码会被转化成字节码(bytecode)。所以CPython是个字节码解释器。当我们从Python官网下载安装包安装,或者是通过类似 "apt-get"
或者 "yum"工具安装的时候,安装的都是CPython版本。

PyPy

*PyPy * 是一个很多地方都和CPython很像的实现,但是这个解释器本身就是由Python写成。也就是说开发者们用Python写了一个Python解释器。然而这个解释器的代码先转化成C,然后在编译。PyPy被认为要比CPython性能更好。因为CPython会把代码转化成字节码,PyPy会把代码转化成机器码。

Psyco

Psyco 是一个类似PyPy,但是很好的解释器。现在已经被PyPy取代了,有可能的话,使用PyPy来代替Psyco。

Jython

Jython是用java实现的一个解释器。Jython允许程序员写Python代码,还可以把java的模块加载在python的模块中使用。Jython使用了JIT技术,也就是说运行时Python代码会先转化成Java 字节码(不是java源代码),然后使用JRE执行。程序员还可以用Jython把Python代码打成jar包,这些jar和java程序打包成的jar一样可以直接使用。这样就允许Python程序员写Java程序了。但是呢,必须要知道哪些Java模块可以在Jython中使用,然后使用Python的语法就可以写程序了。Jython兼容python2,也可以使用命令行来写交互式程序。

IronPython

IronPython 是使用C#语言实现,可以使用在.NET 和 Mono 平台的解释器。IronPython 是兼容 Silverlight 的,配合Gestalt 就可以直接在浏览器中执行。IronPython也是兼容Python2的。

tip: Mono 是提供.NET-compatible 工具的开源框架。

CLPython

CLPython 是用 Common Lisp实现的一个解释器,现在不提倡使用。它允许 Python 和 Common Lisp 的代码混合使用。 跟Python2兼容。

PyS60

PyS60 (Python for S60) 是诺基亚 S60 平台的一个实现版本,不赞成使用。

ActivePython

ActivePython 是基于CPython然后添加一系列拓展的一个实现。是由ActiveState发布的。Python2 和 Python3 都兼容。

Cython

Cython(不是CPython)是一个允许把Python代码转化成C/C++代码或者使用各种各样的C/C++模块/文件的实现。换句话说,Cython是C/C++ 和Python的一个桥梁。Cython也是Python的一种方言。开发者也可以使用Cython来执行Python脚本,并且执行效率比CPython更快。另外,开发者可以写一个Python脚本,使用Cython来编译成(linux上.so
或者是Windows上的.dll)类库,然后当作一个Python模块来使用。Cython脚本使用*.pyx作为拓展名。Cython兼容Python2和Python3。

tips: Python 模块 modules 和 类库libraries是一个东西,只是叫法不同。

QPython

QPython 是CPython解释器的一个安卓接口。QPython 来自Python的安卓模块。可以在 Google Play中找到QPython。

Kivy

Kivy 是一个开源的框架(使用Python解释器),它可以运行在 Android, iOS, Windows, Linux, MeeGo, Android SDK, 和 OS X平台上。 支持Python3, 开发者正在开发其兼容Cython上的Python3。

SL4A

SL4A (Scripting Layer for Android) 是一个允许安卓上执行各种脚本语言的兼容层。SL4A 有很多的模块,我们比较关注的是“Py4A” (Python for Android)。 Py4A 是安卓平台上的一种CPython。

其他

还有很多其他的不同实现。例如WPython,DSPython 请参见 Wiki

orangleliu#gmail.com

REF: Python Tools and Software  Wiki

本文出自 “orangleliu笔记本”博客,请务必保留此出处http://blog.csdn.net/orangleliu/article/details/39204897

时间: 2024-11-02 15:36:49

[Python]解释器的几种实现版本的相关文章

python介绍 编程语言分类及对比 python解释器安装(多版本共存) 变量 数据类型(三种)

python介绍编程语言分类及对比python解释器安装(多版本共存)变量数据类型(三种) 一:python介绍 1.python是什么? python是一门编程语言,编程语言就是一门语言 语言就是一个事物与另外一个事物沟通的工具 而编程语言则是人与计算机沟通的介质 2.为什么要跟计算机沟通:为了奴役计算机 奴隶主-------(人类的语言)-------->奴隶 奴隶主-------(编程语言)-------->计算机 3.什么是编程 奴隶主把想让计算机替自己做事情的逻辑用编程语言给表达出来

Python解释器

1        Python解释器 1.1   CPython 当我们从Python官方网站下载并安装好Python 3.5后,我们就直接获得了一个官方版本的解释器:CPython.这个解释器是用C语言开发的,所以叫CPython.在命令行下运行python就是启动CPython解释器. CPython是使用最广的Python解释器.教程的所有代码也都在CPython下执行. 1.2   IPython IPython是基于CPython之上的一个交互式解释器,也就是说,IPython只是在交

python解释器快捷键

13. 交互式输入的编辑和历史记录 某些版本的 Python 解释器支持编辑当前的输入行和历史记录,类似于在 Korn shell 和 GNU Bash shell 中看到的功能.这是使用GNU Readline库实现的,它支持 Emacs 风格和 vi 风格的编辑.这个库有它自己的文档,在这里我不就重复了:然而,基本原理很容易解释.本章讲述的交互式编辑和历史记录功能在 Unix 版本和 Cygwin 版本中是可选的. 13.1. 行编辑 如果支持,无论解释器打印主提示符还是从属提示符,输入行一

最全Pycharm教程(4)——有关Python解释器的相关配置

最全Pycharm教程(1)——定制外观 最全Pycharm教程(2)——代码风格 最全Pycharm教程(3)——代码的调试.运行 1.准备工作 (1)Pycharm版本为3.4或者更高. (2)电脑上至少已经安装了一个Python解释器. (3)如果你希望配置一个远程解释器,则需要服务器的相关支持. 2.本地解释器配置 配置本地解释器的步骤相对简洁直观: (1)单击工具栏中的设置按钮. (2)在Settings/Preferences对话框中选中 Project Interpreter页面,

python基础总结(基于2.7版本也适用于3.4)

言语介绍: Python(英语发音:/?pa?θ?n/), 是一种面向对象.解释型计算机程序设计语言,由Guido van Rossum于1989年底发明,第一个公开发行版发行于1991年,Python 源代码同样遵循 GPL(GNU General Public License)协议[1].Python语法简洁而清晰,具有丰富和强大的类库.它常被昵称为胶水语言,能够把用其他语言制作的各种模块(尤其是C/C++)很轻松地联结在一起.常见的一种应用情形是,使用Python快速生成程序的原型(有时甚

python 3 廖雪峰博客笔记(二) python解释器

python 解释器用于理解 python代码,存在多种python解释器 CPython 官方版本python解释器,用C语言开发,使用最广泛 IPython 基于CPython,在交互方式上有所增加 PyPy 提高执行速度,使用JIT技术对Python代码动态编译. PyPy 和 CPython有一些不同.同样的代码在两种解释器上肯能有不同结果. Jython 运行在java平台下的python解释器,可以直接把python编译成java字节码 IronPython .Net平台上的 Pyt

用 Python 编写的 Python 解释器

Allison是Dropbox的工程师,在那里她维护着世界上最大的由Python客户组成的网络.在Dropbox之前,她是Recurse Center的引导师, - 她在北美的PyCon做过关于Python内部机制的演讲,并且她喜欢奇怪的bugs.她的博客地址是akaptur.com. Introduction Byterun是一个用Python实现的Python解释器.随着我在Byterun上的工作,我惊讶并很高兴地的发现,这个Python解释器的基础结构可以满足500行的限制.在这一章我们会

#3 Python解释器和编辑器

前言 上文介绍了Python在不同平台的安装方法,本文将带领你了解Python解释器和编辑器的概念,并且选择出最符合自己的解释器和编辑器! 一.Python解释器 其实上文介绍的安装Python,实质上安装的是Python解释器.当你创建一个Python程序文件后,要指定一个专门的解释器去将其翻译成机器码,从而让电脑去执行程序,这就是解释器.接下来将会介绍几种常用的Python解释器. Python Shell 只要正确安装完Python,就会拥有一个Python Shell,在命令行直接输入p

12 Python解释器类型&Python2or3

我们现在知道了Python是一门解释型语言,代码想运行,必须通过解释器执行,Python的解释器本身也可以看作是个程序(翻译官司是哪国人不重要),这个程序是什么语言开发的呢? 答案是好几种语言? what? 因为Python有好几种解释器,分别基于不同语言开发,每个解释器特点不同,但都能正常运行我们的Python代码,下面分别来看下:CPython当我们从Python官方网站下载并安装好Python 2.7后,我们就直接获得了一个官方版本的解释器:CPython.这个解释器是用C语言开发的,所以