查看原文
其他

CPython、Jython、IronPython、PyPy 和 Cython,哪个更好?

21CTO 2023-01-28

关于Python解释器,有官方和第三方几个实现,下面分别介绍。

CPython


Python 编程语言的默认实现是 Cpython。它是用 C 语言编写的。它是原始的 Python 版本,用户可以从官方网站 Python.org 下载。

 CPython 对各种 Python 包和模块的兼容性最高,如果用户需要编写完全符合 Python 标准的代码,CPython 是最佳选择。

Cpython将python源代码编译成中间字节码,由CPython虚拟机执行。CPython 附带一个用 C 和 Python 混合编写的大型标准库。CPython 提供与 Python 包和 C 扩展模块的最高级别的兼容性。 

Jython

Jython 是可以在 Java 平台上运行的 Python 编程语言的实现。Jython 编译为 Java 字节码并在 JVM(Java 虚拟机)中运行。

Jython,它能够从Python中调用Java函数,从Java调用Python函数。Jython编译成Java字节码,然后可以由Java虚拟机运行。

Jython 允许用户轻松使用 Java 程序,因为可以直接从 Jython 调用,同时使用 Java 函数和类,而无需任何额外努力,这对开发者非常有益,因为 Python 用户可以访问庞大的Java库和框架生态系统。

Jython 允许使用 Python 程序中的 Java 类库函数。与 Cpython 相比,Jython 速度较慢,并且缺乏与 CPython 库的兼容性。

IronPython

IronPython 是 Python 编程语言的替代实现,用 C# 编写,目标是在 .NET Framework 平台上运行。

它使用 .Net 虚拟机,即通用语言运行时。IronPython 可以使用 .NET Framework 和 Python 库,而其他 .NET 语言可以非常有效地使用 Python 代码。 

IronPython 擅长使用线程,我们可以在 ironpython.net 网站上找到。

PyPy

PyPy 是用 Python 本身编写的 Python 实现,是 CPython 的另一种替代方案。

如果希望你的代码运行得更快,你可以使用 PyPy。Python 是动态编程语言。 

PyPy 使用 RPython(受限 Python)编写。但你的 Python 程序可以比 CPython 运行得更快。PyPy 是一个 JIT(即时)编译器,而 CPython 是一个解释器。

Cython

Cython 不是 Python 编程语言的替代实现,而是 Python 编程语言的超集,它还支持调用 C/C++ 函数。

Cython 是一种编译语言,通常用于为 Python 生成 C 扩展(在 Windows 上为 *.pyd,在类 Uinux 上为 *.so)。

以上几个Python的解释器实现,相信大家对Python有个更深的认识。

作者:场长


相关阅读:

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存