写点什么

7 个不要错过的 Python IDE

  • 2019-09-21
  • 本文字数:2741 字

    阅读完需:约 9 分钟

7个不要错过的 Python IDE

目前 Python 的编辑器可谓是极其丰富,经过反复斟酌之后,我们为大家挑选了 7 个值得注意的 Python 编辑器,不仅适合初次使用 Python 进行开发的菜鸟选手,同样也有更复杂的,适用于用 Python 进行全面开发的专家级选手。

1、Eric6

与 Python 自己的原生 IDE IDLE 一样,Eric6 是一个用 Python 编写的 Python IDE,虽然它使用 Qt5 UI 框架提供一个比 IDLE 复杂很多的 UI。但是开始使用的时候还是需要配置一些组件,因为 Eric6 不像传统的本地原生平台应用程序一样。它本质上是一个大的 Python 包和几个重量级依赖 Dependency,例如 Python 的 QT5 绑定。这样一来就导致 Eric6 入门需要对 Python 包管理的理解,因此看上去它不是那么适合也不会那么吸引初级开发者或初学用户。就这方面而言,安装程序脚本会提供信息反馈,以便您知道需要获取并安装哪些包,同时最终协助你完成配置过程 (例如 PyQt5,QScintilla)。


不考虑安装过程,Eric6 配置还是很齐全的。它具有现代 IDE 中常用的实用工具,例如类浏览和版本控制,但它还集成了对特定于 Python 的功能的支持,如 unittest,PyLint,PyInstaller 和 cx_freeze 应用程序分发系统,以及内置的 PyPI / pip 包管理浏览器。


在 Eric6 中创建的新项目也可以构建为 PyQT4 / 5 的 GUI 和控制台应用程序,因为已经安装了底层库,但默认情况下是不包括 Qt 表单设计器等其他开发工具的。



Eric6 本身是用 Python 编写的,使用 Qt UI 框架,并且囊括了所有有用的 Python 特有的功能

2、Wing IDE

被称为“Python 程序员的智能开发环境”,Wing IDE 强调专为 Python 开发者提供的设计功能集成。这超出了代码库中的重构函数或使用多个 Python 解释器。它还包括与许多流行的 Python 框架(Django,Zope,Plone),包括(PyQT,WXPython,PyGTK)软件包和第三方应用程序(Maya,Blender)的集成。 Raspberry Pi 用户也可以使用 Wing IDE 进行开发。


Wing 的第 7 版增加了对高达 3.8 Python 版本的支持,代码质量和检查功能的支持(通过原生检查器以及通过 PyLint 等插件功能来实现),也包括 Pandas DataFrames 和 NumPy ndarrays 等数组数据的查看器,以及会话的演示模式或代码演示等功能。


Wing 是一个商业产品,但它有两个免费版本,并且对独立开发商和初学者提供很多优惠。Wing IDE 101 版本没有该套件所包含的大多数高级功能,(但也)包括开发人员可能使用的许多日常工作(书签,模块浏览,重构),但它是 Python 初学者的一个好的上手工具,由此可以避免与功能落后的 IDLE 纠缠不清。个人版本,也是免费的,也拥有一些淡然不是全部的专业水平的功能。Pro 版本提供永久和年度许可产品,起价为每位用户 69 美元。还有一个 30 天的试用版。



Wing IDE 的功能集很丰富,但全功能仅在付费版中提供。

3、Pyzo

Pyzo 是一个小 IDE,主要针对科学计算的用户,有一个小工具集:编辑器,交互式 shell,文件浏览器,源结构浏览器和一些其他的设施。 它主要用于与库的快速交互,您可以在 Python 的 REPL 中键入命令或执行单个文件,而不是正式的应用程序开发。在这个意义上,它不太适合那些想要创建应用程序,更适合那些只是想要使用 Python 平台工作的人。


为了便于解压和开发,Pyzo 提供了原生平台可执行文件–无需在运行时拼凑在一起。它将与现有的 CPython 运行时协同工作,但它的创建者推荐 Continuum Analytics 的简化版本 Anaconda 发布的 miniconda,使用 miniconda 更容易获取软件包和插件,避免过多的麻烦。



Pyzo 的超小化界面与 Python 自己的 IDLE 相比有所提升,对于简单的脚本和基本的科学计算任务非常有用。

4、Thonny

想深入学习的初学者一般会直接转向 IDLE,但 Thonny 是一个专门用于让初学者尽快熟悉 Python 这个语言而设计的小型 IDE,它是一种更加轻松方便的选择。它可在 Windows,Mac 和 Linux 上使用,且户无需下载或配置 Python 解释器。最新版本的 Python(目前为 3.7)与 Thonny 捆绑在一起,IDE 默认开箱即用。也就是说,您可以随时交换其他的 Python 编译运行环境。


默认情况下,Thonny 将自己安装在用户的配置文件目录中,因此对于使用其他人的计算机或没有管理员权限的人来说,它不需要提升权限即可设置或使用。


菜单命令允许您在键入 python 或 pip 时使用 Thonny 的解释器和包管理器作为默认选项打开命令行会话。 (这是一个好主意。)其他很好的功能包括脚本 AST 的树查看器,侧边栏记笔记部分,以及调试模式下对象,堆栈,堆和变量的检查器。



从一个 IDLE 起始的简单的 IDE 的一步,Thonny 可以在一个自包含的目录中运行,它有自己的 Python 解释器副本,这是一种在移动中使用 Python 的便捷方式。

5、NINJA-IDE

作为一个独立项目,Ninja-IDE 可与 ActiveState 的 Komodo IDE 或 PyCharm 等专业级开发工具相媲美,不仅在开发人员体验方面,而且还包括其特有的为 Python 用户构建的功能。


例如,Ninja-IDE 的“首选项”对话框有一个专门用于运行程序时使用的 Python 解释器的选项卡,以及用于启用或设置解释器使用的所有各种命令行选项的复选框。如果像我一样忘记他们是什么或不记得为特定脚本设置它们,这非常方便。 IDE 中另一个默认显示的选项卡是 Migration 2to3,因此可以分析为 Python 2.x 编写的脚本并提供修改建议。



Ninja 是一个开源 IDE,拥有大量的官方和贡献者插件,它包含一个用于创建 Python 虚拟环境的 UI 作为这样的插件。

6、Visual Studio Code

微软的简单和精炼的代码编辑器从其支持的海量不同的语言扩展中获得力量。Python 开发人员可以使用多种 Visual Studio 代码扩展,最开始是由 Python 扩展创始人 Don Jayamanne 开发的,现在他已经加入了微软。它与每一个最新版本的 Python 保持同步,它集成了所有你想要的好东西的支持:代码片段,代码静态分析,自动完成,与科学工具集成,如与 Jupyter 等科学工具的集成,重构,单元测试,调试,以及更多更多。



Microsoft 的 Visual Studio Code 附带了 Microsoft 官方支持的 Python 官方扩展,囊括了使用该语言进行开发的方方面面。

7、Atom

GitHub 的 Atom 编辑器是由一些支持 Visual Studio Code 的相同部分构建的,但它最大的相似之处在于设计理念:保持精简,并通过外部包添加语言或开发人员特定的功能。


对于 Python 用户来说,Microsoft 赞助的 Visual Studio Code 没有一个单独的总括插件。大多数关键部分都分别在几个包中:用于基本语法高亮和片段支持的 language-python,用于一些方便函数的 python-tools,如快速重构,autocomplete-python 用于自动完成,以及 linter-flake8 / linter-pep8 / linter-用于代码 linting 的 pycodestyle,取决于你正在使用的 Python 包。



Atom 文本编辑器具有附加组件,可将其转换为 Python 开发环境,完成代码完成,语法突出显示和 linting(程序静态分析工具)


2019-09-21 08:308959

评论 2 条评论

发布
用户头像
pycharm 名字都没有吗?sublime 呢?
2019-09-23 11:55
回复
用户头像
pycharm不配拥有姓名吗
2019-09-21 14:38
回复
没有更多了
发现更多内容

《吃透MQ系列》核心基础全在这里了,一文啃透!

Java 程序员 后端

公有云是什么意思?其存在的意义是什么?

行云管家

云计算 公有云 私有云 混合云

《JVM系列》 第六章 -- 对象的实例化与内存布局(1)

Java 程序员 后端

「并发原理专题」AQS的技术体系之CLH、MCS锁的原理及实现

Java 程序员 后端

【C 语言小游戏】手打贪吃蛇1

Java 程序员 后端

架构实战营-模块三作业

随风King

「架构实战营」

全面通透深入剖析工厂方法模式

Tom弹架构

Java 架构 设计模式

[译] 微服务的设计模式

Java 程序员 后端

WPF学习——依赖项属性(2)(1)

Java 程序员 后端

WPF学习——依赖项属性(2)

Java 程序员 后端

《Spring实战》读书笔记-第4章 面向切面的Spring(1)

Java 程序员 后端

【Java知识点详解 7】装箱和拆箱

Java 程序员 后端

Zookeeper(从7个方面来了解Zookeeper基础概念)

Java 程序员 后端

“抽象类”到底抽不抽象?实例对比一看便知!

Java 程序员 后端

《Spring实战》读书笔记-第4章 面向切面的Spring

Java 程序员 后端

《重学Java高并发》Disruptor使用实战

Java 程序员 后端

【Java从0到架构师】Maven

Java 程序员 后端

【Java从0到架构师】SQL 多表查询

Java 程序员 后端

过等保选择云堡垒机还是硬件堡垒机比较好?

行云管家

网络安全 云服务 堡垒机 等级保护

ZooKeeper分布式配置——看这篇就够了

Java 程序员 后端

《代码重构》之方法到底多长算“长”

Java 程序员 后端

【Java 基础语法】万字解析 Java 的多态、抽象类和接口

Java 程序员 后端

【Java 多线程 1】CountDownLatch

Java 程序员 后端

【Java 集合框架】Stack、Queue 和 Deque 的使用

Java 程序员 后端

【Java核心面试宝典】Day3、图解HashMap高频面试及底层实现架构!

Java 程序员 后端

【Java每日面试题】大厂是如何设计秒杀系统的?

Java 程序员 后端

YGC问题排查,又让我涨姿势了!

Java 程序员 后端

ZK(ZooKeeper)分布式锁实现

Java 程序员 后端

《菜菜的机器学习sklearn课堂》降维算法PCA和SVD

Java 程序员 后端

营口市广东商会成立

江湖老铁

《JVM系列》 第六章 -- 对象的实例化与内存布局

Java 程序员 后端

7个不要错过的 Python IDE_编程语言_Serdar Yegulalp_InfoQ精选文章