vlambda博客
学习文章列表

11 个优秀的 Python 编译器和解释器

英文 | https://python.plainenglish.io/12-killer-python-code-snippets-for-everyday-programming-5a05daad34af

翻译 | 杨小爱

(给有课网加星标,开发与培养你的第二职业能力)

Python 是一门对初学者友好的编程语言,是一种多用途的、解释性的和面向对象的高级语言。

它拥有非常小的程序集,非常易于学习、阅读和维护。其解释器可在Windows、Linux 和 Mac OS 等多种操作系统上使用。它的可移植性和可伸缩性等特性使得它更加容易被运用。

Python 库可用于以下用途:

Web 开发
数据科学
机器学习
多媒体
软件开发
像 Django 这样的 Web 框架
GUI 应用

大多数极客认为 Python 是解释性语言,但它也存在编译过程。

编译部分在代码执行时完成,并被删除。然后编译内容被转换为字节码。通过机器和操作系统进一步扩展到 Python 虚拟机。

本文重点介绍了适用于 Python 程序员的 11 种 优秀 的 Python 编译器和解释器。

1、Brython

Brython 是一种流行的 Python 编译器,可将 Python 转换为 Javascript 代码。它提供对所有 Web 浏览器(包括一种手机 Web 浏览器)的支持。

它还支持比较新的 html5/css3 规范,可以使用流行的 CSS 框架,如 BootStrap3 和 LESS。

网址:https://brython.info

2、Pyjs

Pyjs 是一个丰富的 Internet 应用程序框架,也是一种轻量级的 Python 编译器,可以从 Web 浏览器直接执行 Python 脚本,可以从浏览器的 JS 控制台执行程序。

它是从 Python 到 Javascript 的编译器,可以使代码在 Web 浏览器上运行。它带有 Ajax 框架和 Widget Set api。

网站:http://pyjs.org

3、WinPython

它是为 Windows 操作系统设计的。它有一些 CPython 的特性。它预装了一些针对数据科学和机器学习的流行库,例如 Numpy、Pandas 和 Scipy。

它带有 C/C++ 编译器,大多数时候不会用到。除此之外,它只有 Python 编译器,没有其它包。

网址:https://winpython.github.io

4、Skulpt

Skulpt 是 Python 的浏览器版实现,可以被添加到 HTML 代码中。

此 Python 编译器使用 Javascript 编写,在客户端运行代码,无需其它插件、加工或服务器支持。

Skulpt 解释器通过导入方式,来执行保存在网站上的 .py 文件中的代码。

网站:https://skulpt.org

5、Shed Skin

该编译器将 Python 标准库模块编译为 C++,它将静态类型的 Python 程序转换为很受限的优化的 C++ 代码。

通过将其内置的 Python 数据类型再次实现为自己的类集(可以用 C++ 高效实现),可以提高性能。

网站:https://en.wikipedia.org/wiki/Shed_Skin

6、Active Python

这是用于 Windows、Linux 和 Mac Os 的 Python 发行版,有免费的社区版。

它支持在许多平台安装,某些不被 Python-like 的 AIX 支持的平台,它也支持。它提供了比 Python 更多的兼容性。

网站:https://www.activestate.com/products/activepython

7、Transcrypt

它是一种流行的将 Python 代码编译为简单易读的 Java 代码的编译器。它是一个轻量级的 Python 编译器,支持对矩阵和向量运算进行切片。

Transcrypt 也可以在 Node.js 上运行。分层模块、多重继承和本地类给其添加了很多功能。

网站:https://www.activestate.com/products/activepython

8、Nutika

这是一种源码到源码的 Python 编译器,可以将 Python 源代码转换为 C/C++ 可执行代码。它会使用到许多 Python 库和扩展模块。

它自带 Anaconda,可用于创建数据科学和机器学习项目。

网站:https://www.activestate.com/products/activepython

9、Jython

它用 Java 编写,可以在运行 JVM 的任何平台上执行。Jython 将 Python代码编译为 Java 字节码,从而做到跨平台。

它可用于创建 Servelets、Swing、SWT 和 AWT 软件包的解决方案。Jython 使用 CPython 之类的全局解释器锁(GIL) 。

另外,你可以将 Java 类扩展到 Python 代码。

网址:https://www.jython.org

10、CPython

CPython 是默认的且使用最广泛的 Python 编译器。它是用 C 语言编写的,并使用 GIL(全局解释器锁),这使得并发 CPython 进程之间的通信很困难。

CPython 中的编译步骤包括:解码、令牌化、解析、抽象语法树和编译。

网站:https://compilers.pydata.org

11、IronPython

此版本的 Python 编译器是在微软的 .Net 框架和 Mono 上实现的。

它还提供了动态编译和交互式控制台。它使得安装非常容易,并且具有跨平台兼容性。

它还具有标准库和不同的模块,主要用于实现 .Net 框架的用户界面库。

网址:https://ironpython.net

结论

Python 是一种为许多实现提供了可能的开发语言,例如 Python 到 Java,Python 到 Javascript 或其它。

Python 的这些编译器有助于我们理解它是多么的全能。


学习更多技能

11 个优秀的 Python 编译器和解释器