当我们写好一段 Python 代码时,实际上得到的就是一个以 .py 结尾的纯文本文件。
可光有文件还不够,要让它“动”起来,就得靠 Python 解释器来执行。
Python 的魅力之一,就是它完全开源。
理论上,只要你功力够深厚,谁都可以写一个属于自己的解释器。
不过,这个挑战难度可不小。也正因如此,市面上出现了不少不同风格的解释器。
CPython
从 Python 官方网站 下载并安装 Python 3.x 后,你得到的就是最正统的解释器——CPython。顾名思义,它是用 C 语言写成的。
当你在命令行里敲下 python,其实就是把 CPython 唤醒了。
绝大多数人平时写的 Python 程序,都是在它的怀抱里运行的。本教程中的代码,也全都基于 CPython。
IPython
如果你觉得命令行里那几个 >>> 提示符太单调,不妨试试 IPython。
它并没有改变 Python 的执行方式,本质上还是依赖 CPython,只是让交互体验更舒服。
提示符会换成 In [序号]:,看起来更现代,也更适合实验和快速尝试。

PyPy
说到追求速度,就不得不提 PyPy。它最大的亮点是采用了 JIT 技术,能把 Python 代码“即时编译”成机器码执行。结果就是——跑起来比 CPython 快得多。
当然,速度带来的代价就是:有些细节和 CPython 不完全一样。
所以如果你打算用 PyPy,还得留意一下它和 CPython 的差异 PyPy_CPython。

Jython

想在 Java 的世界里写 Python?那就用 Jython。它能把 Python 代码直接编译成 Java 字节码,让 Python 和 Java 无缝合作。
IronPython

和 Jython 类似,IronPython 则是站在微软 .NET 平台上的另一位成员。
它能把 Python 转成 .NET 的字节码。如果你的项目要和 .NET 紧密结合,IronPython 就派上用场了。

小结
解释器的家族很庞大,但真正用得最多的,还是 CPython。 如果你只是学习、开发、部署常见项目,那坚持用官方 CPython 就稳妥无比。至于 Jython、IronPython 这类跨平台的尝试,往往更适合特殊场景。一般来说,与其费力把 Python 搬进 Java 或 .NET,不如通过网络通信的方式让它们互联互通,既独立又高效。
所以,在动手之前,先确认你装的是 CPython 3.x —— 那就是从 Python 官方网站 下载的安装包。用它作为基础,你的学习之路会更顺畅。