各种 Python 实现之间的区别?
大多数开发人员都知道 Python,无论他们的系统中实现了什么 Python。因此,我所说的"Python"是什么意思,它是 Python 的抽象接口吗?我们是指 CPython,即常见的 Python 实现(而不是 Cython)吗?还是我们的意思完全不同?或者我们指的是 Jython 或 IronPython 或 PyPy。
虽然上面提到的技术是常用的名称和常用的参考,但其中一些技术却服务于完全不同的目的。
我们可以将 Python 视为一种可以以多种不同方式实现的语言的规范。
在本教程中,我们将介绍 Python 的以下实现 -
- CPython
- IronPython
- Jython
- PyPy
CPython
CPython 是用 C 语言实现的"Python"语言。Python 是一种解释型编程语言。因此,Python 程序员需要解释器将 Python 代码转换为机器代码。而 Cython 是一种编译型编程语言。 Cython 程序可以直接由底层计算机的 CPU 执行,而无需使用任何解释器。
IronPython
IronPython 是 Python 编程语言的开源实现,与 .NET 紧密集成。IronPython 可以使用 .NET 和 Python 库,其他 .NET 语言也可以同样轻松地使用 Python 代码。
IronPython 实现使用 .Net 虚拟机,即通用语言运行时。它是用 c# 编写的。IronPython 使用 .NET 框架,通过这个 .NET 语言可以轻松高效地使用 Python 代码。
现有的 .NET 开发人员还可以使用 IronPython 作为一种快速且富有表现力的脚本语言,用于嵌入、测试或从头开始编写新应用程序。
Jython
Jython,顾名思义,是可以在 Java 平台上运行的 Python 实现。 Jython 项目提供 Python 的 Java 实现,为 Python 提供在 JVM 上运行和访问用 Java 编写的类的优势。与 Cpython 相比,Jython 速度较慢。Jython 实现可免费用于商业和非商业用途。
Jython 提供了一个交互式解释器,可用于与 Java 包或正在运行的 Java 应用程序进行交互。
PyPy
PyPy 是用 Python 编写的 Python 编程语言的实现。解释器是用 RPython 编写的。RPython 本身是 Python 的一个子集)。平均而言,PyPy 比 CPython 快 4.5 倍。
PyPy 与现有的 Python 代码高度兼容。它支持 cffi、cppyy,并且可以运行流行的 Python 库,如 twisted 和 django。它还可以通过 cextension 兼容层运行 NumPy、Scikit-learn 等。
相关文章
有用资源
python 参考教程 - 该教程包含有关 python 的更多信息:https://www.cainiaomax.com/python/

