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代码的功能和CPython是完全一样的。好比很多国产浏览器虽然外观不同,但内核其实都是调用了IE。

CPython用>>>作为提示符,而IPython用In [序号]:作为提示符。

1.3   PyPy

PyPy是另一个Python解释器,它的目标是执行速度。PyPy采用JIT技术,对Python代码进行动态编译(注意不是解释),所以可以显著提高Python代码的执行速度。

绝大部分Python代码都可以在PyPy下运行,但是PyPy和CPython有一些是不同的,这就导致相同的Python代码在两种解释器下执行可能会有不同的结果。如果你的代码要放到PyPy下执行,就需要了解PyPy和CPython的不同点。

1.4   Jython

Jython是运行在Java平台上的Python解释器,可以直接把Python代码编译成Java字节码执行。

1.5   IronPython

IronPython和Jython类似,只不过IronPython是运行在微软.Net平台上的Python解释器,可以直接把Python代码编译成.Net的字节码。

小结

Python的解释器很多,但使用最广泛的还是CPython。如果要和Java或.Net平台交互,最好的办法不是用Jython或IronPython,而是通过网络调用来交互,确保各程序之间的独立性。

时间: 2024-07-31 01:27:22

Python解释器的相关文章

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页面,

设置PyCharm软件的配色方案和Python解释器

设置PyCharm软件的配色方案 设置Python解释器(用于Python2 or 3 的切换)

winfrom桌面程序调用python解释器

Winfrom桌面程序调用python解释器执行py脚本后台执行完成具体的功能,为什么要这样处理呢?因为我现在的大部分过项目都是后台的脚本处理,界面基本的输入完成之后,将参数按照规则传入到脚本的入口,根据参数的不同执行不同的脚本流程,如果要修改某一个处理过程或者添加新的模块,不需要修改前台的任何代码,只需要在脚本中修改就可以达到需求的效果,简单.方便,风险较小,影响可控等优点. 因此,我做了一个demo,仅供参考,不足之处,请赐教! 界面如图: Start_exe_py的执行代码如下: 1 pr

Python解释器的探讨:第二部分代码对象

本文是python解释器系列文章的一部分,第一部分文章请看这里: http://blog.csdn.net/caimouse/article/details/47342357 从第一部分文章里可知,主要分析了一下函数对象相关的内容.本文里继续深入分析python解析器相关内容,主要分析函数的代码对象. >>> def foo(a): ...     x = 3 ...     return x + a ... >>> foo <function foo at 0x

Unix类环境调用python解释器

在Unix类环境中我们编写python脚本时总是需要调用python解释器,调用方式通常是以下两种: 1 #!/usr/bin/python 2 #!/usr/bin/env python 那么,这两种调用python解释器的方法有什么区别呢? 其实这两种写法都是对的,其中#!/usr/bin/python直接告诉操作系统执行此脚本的时间,去/usr/bin目录下找python解释器.而写成#!/usr/bin/env python的形式则是为了去适应python没有被默认安装在/usr/bin

python 解释器内建函数

python解释器内建函数列表如下: 001.abs() 求绝对值 #!/usr/bin/python if __name__=="__main__": print(abs(-100))#打印100 002.all() 如果参数列表中所有的值都是True,all函数才返回True #!/usr/bin/python if __name__=="__main__": conditions=[True,False] print(all(conditions))#打印Fa

Python解释器的探讨:第一部分函数对象

Python解释器的探讨:第一部分函数对象 最近三个月,我和Ned Batchelder花费了大量时间在开发byterun.这个项目byterun(https://github.com/nedbat/byterun)是使用python开发的python字节码的解释器.开发解释器byterun过程中,让我学习到很多东西,以及带来很大的乐趣.在本文系列里,我将带你来体验一下我的开发乐趣,以及使用byterun是非常高兴的事情.不过,在体验快乐之前,先要理解一些基础的知识,就像做运动之前先来暖身一下:

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

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