说到写Python程序,我经常会到这2个编译器。因为有不同体验感受,在文章中,总结对2个编译器进行比较。
Pycharm | Spyder | |
注释/反注释 | Ctrl+/ | Ctrl+1 |
缩进/反缩进 | Tab/Shift+Tab | Tab/Shift+Tab |
运行 | Shift+F10 | F5 |
安装库 | File->setting->+搜索安装 | Anacomda Prompt中pip install XXX |
优点 | 1.使用matplotlib绘图,图可动 | 1.与matlab风格相似,玩过matlab的人上手Spyder容易 |
缺点 | 源程序和终端不在同一界面内。 | 使用matplotlib画的图是静止的,不可动 |
推荐指数 | ★★★ | ★★★★★ |
如果你准备做肝Python开发项目,建议使用Pycharm。
若你准备基于Python进行数据分析,建议使用Spyder。本人Spyder一见如故,越发地喜爱。
当然除了这两还有10个好用的,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