12 Python解释器类型&Python2or3

Posted crownyp

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了12 Python解释器类型&Python2or3相关的知识,希望对你有一定的参考价值。

我们现在知道了Python是一门解释型语言,代码想运行,必须通过解释器执行,Python的解释器本身也可以看作是个程序(翻译官司是哪国人不重要),这个程序是什么语言开发的呢? 答案是好几种语言? what? 因为Python有好几种解释器,分别基于不同语言开发,每个解释器特点不同,但都能正常运行我们的Python代码,下面分别来看下:
CPython
当我们从Python官方网站下载并安装好Python 2.7后,我们就直接获得了一个官方版本的解释器:CPython。这个解释器是用C语言开发的,所以叫CPython。在命令行下运行python就是启动CPython解释器。
CPython是使用最广且被的Python解释器。教程的所有代码也都在CPython下执行。
IPython
IPython是基于CPython之上的一个交互式解释器,也就是说,IPython只是在交互方式上有所增强,但是执行Python代码的功能和CPython是完全一样的。好比很多国产浏览器虽然外观不同,但内核其实都是调用了IE。
CPython用>>>作为提示符,而IPython用In [序号]:作为提示符。
PyPy
PyPy是另一个Python解释器,它的目标是执行速度。PyPy采用JIT技术,对Python代码进行动态编译(注意不是解释),所以可以显著提高Python代码的执行速度。
绝大部分Python代码都可以在PyPy下运行,但是PyPy和CPython有一些是不同的,这就导致相同的Python代码在两种解释器下执行可能会有不同的结果。如果你的代码要放到PyPy下执行,就需要了解PyPy和CPython的不同点。
Jython
Jython是运行在Java平台上的Python解释器,可以直接把Python代码编译成Java字节码执行。
IronPython
IronPython和Jython类似,只不过IronPython是运行在微软.Net平台上的Python解释器,可以直接把Python代码编译成.Net的字节码
解释:
总之:python 2.x是遗留的,python 3.x是该语言的现在和未来
python 3.0于2008年发布。最终的2.x版本2.7发布于2010年年中,声明了
延长了对这个寿命结束的版本的支持。2.x分支之后将看不到新的主要版本。3、X是
正在积极开发中,已经有五年多的稳定版本,包括2012年的3.3版,
2014年为3.4,2015年为3.5。这意味着,所有最近的标准库改进,例如,只是
在python 3.x中默认可用。
guido van rossum(Python语言的原始创建者)决定正确地清理python 2.x,与2.x范围内的新版本相比,在向后兼容性方面考虑的更少。最大的改进是更好的Unicode支持(默认情况下,所有文本字符串都是Unicode)以及更健全的字节/Unicode分离。
此外,核心语言的几个方面(如print和exec being语句、使用floor division的整数)已经被调整,以便新来者更容易学习并与语言的其余部分更一致,并且旧的cruft已经被删除(例如,所有类现在都是新的样式,“range()”返回一个内存高效的itera表,不是2.x中的列表)。

以上是关于12 Python解释器类型&Python2or3的主要内容,如果未能解决你的问题,请参考以下文章

python汇总

1.7 Python基础知识 - 数值类型

Python--基本的对象类型(元组_不可变的数据类型)

[Python之路] 内存管理&垃圾回收

Python--基本的对象类型(列表_可变的数据类型)

python--多线程&多进程