几款主流的 Python IDE
选自:GoogleAIblog
转自:机器之心
作者:魔王
本文介绍了多个 Python IDE,并评价其优缺点。读者可以参考此文列举的 Python IDE 列表,选择适合自己的编辑器。
写 Python 代码最好的方式莫过于使用集成开发环境(IDE)了。它们不仅能使你的工作更加简单、更具逻辑性,还能够提升编程体验和效率。
每个人都知道这一点。而问题在于,如何从众多选项中选择最好的 Python 开发环境。初级开发者往往面临这个问题。
本文将概述最受程序员欢迎的 Python IDE,以及其他值得考虑的选项。在此之前,我们先来看看 IDE 是什么。
什么是 IDE?IDE 有什么用?
IDE 是开发者创建程序时使用的软件包。它通过简单的用户界面集成多个高度关联的组件,从而最大化程序员的生产效率。本质上,IDE 是一种改进代码创建、测试和 debug 流程的工具,它使这些工作更加简单。
IDE 使用的工具包括:
文本编辑器
编译器和/或解释器
装配自动化工具(assembly automation tool)
调试器(debugger)
有一个与 IDE 相似的术语——代码编辑器(code editor)。我们先来探讨二者的异同。
什么是代码编辑器?
代码编辑器是一个能够突出显示语法和安排代码版式的文本编辑器。高级代码编辑器可以开发和修改代码。
IDE 和代码编辑器的显著特征
IDE 和代码编辑器有哪些共同优点?它们均可帮助开发者:
存储和重新打开脚本
运行代码
debug
突出显示语法
最受 Python 开发者欢迎的 IDE
PyCharm
下载地址:https://www.jetbrains.com/pycharm/download/
PyCharm 由著名软件开发公司 JetBrains 开发。在涉及人工智能和机器学习时,它被认为是最好的 Python IDE。最重要的是,Pycharm 合并了多个库(如 Matplotlib 和 NumPy),帮助开发者探索更多可用选项。
兼容性:Windows、MacOS、Linux
主要插件和功能:
内置开发者工具
远程开发能力
实时编辑模式
IPython Notebook
优点:
PyCharm 支持 web 开发框架,如 Pyramid、Flask 和 Django。
提供智能代码功能,可以执行更精确、快速的 bug 修复。
在 Docker 和 Vagrant 连接和 ssh 终端的帮助下,允许在远程主机上进行程序开发。
缺点:
界面庞杂
其优点的成本高昂
Visual Studio Code
下载地址:https://code.visualstudio.com/Download
Visual Studio Code 有时会与 Visual Studio IDE 混淆,后者并非 Python 使用者常用的工具。VS Code 是完整的代码编辑器,具备很多优秀功能,许多程序员称其为最好的 IDE 编辑器。
兼容性:Windows、Linux、Mac OS
主要插件和功能:
内置 git
自定义工具扩展插件
断点调试
交互式控制台
优点:
其 Electron 框架允许开发者在几乎所有平台上使用 VS Code。
在编辑器中直接 debug。
支持多个键盘快捷键,以加速编程。
缺点:
debug 功能有限。
没有内置模板。
Sublime Text
下载地址:https://www.sublimetext.com/
Sublime Text 被认为是最好的 Python 编辑器,因为它简单、通用、方便。它使用广泛,可用于不同的平台。
兼容性:Windows、Linux、Mac OS
主要插件和功能:
简易导航,实现高性能
支持不同包,以自定义编辑器
只需一个关键词,即可复制常见代码段
即时项目切换和分割编辑
优点:
可处理多种标记语言。
允许用户选择想要进行的项目。
具备能够提供类和函数宽索引的重要工具。
提供强大的 API 和组织化的生态系统,以实现高性能。
缺点:
对于新手来说,过于高级。
其 git 插件不是特别强大。
VI/Vim
下载地址:https://www.vim.org/
Vim 位列最好的 Python IDE 工具前 5 名。它是一个 modal editor,可以从「文件编辑」中分割文件。相比最初的 Vi,Vim 有了巨大进步,功能更加强大。
兼容性:Windows、Linux、Mac OS、IOS、Android、UNIX、AmigaOS、MorphOS
主要插件和功能:
其脚本允许用 Python 执行几乎所有编程任务。
Ctags,帮助实现更好的标记导航。
内置基础词汇补全。
优点:
具备键盘界面,可以提升效率。
支持多个插件(如版本控制工具、文件管理工具)。
通过 .vimrc 文件实现不同扩展功能(如突出显示搜索结果)。
缺点:
界面笨拙,一些开发者认为其不方便使用。
其 modal editor 需要用户花费一定时间学习。
GNU Emacs
下载地址:https://www.gnu.org/software/emacs/emacs.html
GNU Emacs 也是最好 Python 编辑器的有力竞争者。它常被描述为可扩展、自文档化、实时显示。尽管它在业界并非最新,但它经常升级来满足开发者的需求。
兼容性:Windows、Linux、Mac OS、IOS、Android、UNIX、AmigaOS、MorphOS
主要插件和功能:
使用 Lisp 编程语言
语法着色
支持 Unicode
优点:
Lisp 作为第二语言,可以帮助程序员更好地编程。
Emacs 可与多个不同平台兼容。
提供大量自定义脚本供开发者使用。
缺点:
用户可能需要多花一点时间,来学习该编辑器的复杂自定义过程。
使用上比其他一些 IDE 要复杂一些。
IDLE
下载地址:https://docs.python.org/3/library/idle.html
IDLE 代码编辑器深受学生欢迎,它是 Python 自带编辑器。该编辑器使用简单、通用,且支持不同设备。在使用更复杂工具之前,开发者可以通过 IDLE 学习基础知识。
兼容性:Windows、Linux、Mac OS
主要插件和功能:
tkinter GUI 工具包
多窗口界面
具备对话框、浏览器等配置
优点:
允许用户突出显示错误、自动编码,并进行准确识别。
具备轻量级 Python shell。
其内置修正功能可以提升性能。
允许用户在编辑器中搜索和替换文件。
缺点:
不支持复制到库。
脚本不能超过 100 行代码。
对于机器学习、人工智能和大数据,最好的 Python 兼容 IDE
Python 是机器学习、人工智能、大数据等领域中的首选语言之一。这部分将介绍适合这些领域 Python 开发的 IDE。
Atom
下载地址:https://atom.io/
Atom 是一个开源编辑器,可与几乎所有编程语言兼容,如 PHP、Java。它定期更新、可信赖,且具备通用性。Github 为 Atom 开发了强大的功能,以提供良好的编程体验,包括多个插件,如 SQL queries 包、Markdown Preview Plus 包,以及编辑、可视化和渲染 LaTeX 公式的包。
Spyder
下载地址:https://www.spyder-ide.org/
Spyder 是为数据科学而开发的。它是开源工具,能够与大量平台兼容,因而成为 IDE 新手用户的更好选择。为实现完美开发,它合并了多个关键库,如 NumPy、Matplotlib 和 SciPy。
JuPyter/IPython Notebook
下载地址:https://jupyter.org/
Jupyter 是基于 web 的编辑器,它允许开发者构建和运行脚本或 notebook。它相对简单,对用户也更加友好。Jupyter 还使用 Seaborn 和 Matplotlib 执行数据可视化。
其他 Python 开发 IDE
这部分将介绍一些不那么有名和流行但同样值得一看的 IDE。
Eclipse + PyDev
下载地址:
https://www.eclipse.org/
https://www.pydev.org/
Eclipse 是一个开源编辑器,也是 Windows 系统首选 Python IDE 之一。其扩展项和插件非常昂贵,足以构建你想构建的一切。Eclipse 辅以 PyDev 扩展项,可实现智能 debug,并改善代码质量。
Eric Python
下载地址:https://eric-ide.python-projects.org/
Eric 是另一个不那么流行的 Python IDE,但它功能强大且高效。不管是商业用途还是私人用途,Eric 都能提供合适的功能。它可在所有平台上运行。
Wing
下载地址:https://wingware.com/
Wing 是著名的 Python IDE,可实现智能编程。其编辑器简单易用,debugger 强大,支持远程编程、错误检查等功能,值得一试。
PyScripter
下载地址:https://sourceforge.net/projects/pyscripter/files/latest/download
PyScripter 以其卓越功能打败了适用于 Windows 系统的其他 Python IDE。它也是 Mac 系统中好用的 Python IDE,其商业版本支持大部分编程语言。PyScripter 具备丰富的功能集,但也很轻量。
Pyzo
下载地址:https://pyzo.org/start.html
Pyzo 是一个免费开源编程工具,可与任意 Python 解释器一起使用,甚至是 Conda 环境。其最突出的两个特点是简洁性和交互性。简单易用,非常适合新手。
Thonny
下载地址:https://thonny.org/
Thonny 由塔尔图大学开发,适合新手程序员。其界面没有任何复杂或多余功能,很容易上手。另一个适合新手的地方是,你可以看到 Python 在每一步中对你的表达式的评估。
结论
本文概述了大量优秀的 Python IDE 和其他工具。决定使用哪一种工具取决于工具的便利性和对工具的熟练程度。当然,也有大家都喜欢的工具(如 PyCharm),但是你可以多尝试几种工具,看看哪种最适合你。
一些 IDE 适合新手,另一些则更加专业,每一个 IDE 都具备独特的功能和设计。本文仅提供一些选项,读者可以从中选择适合自己的 Python IDE。
几款主流的 Python IDE相关推荐
- python3ide_推荐:3款开源的Python IDE
原标题:推荐:3款开源的Python IDE 从主要的大型网站到桌面工具,再到企业软件,Python的应用无处不在.各种流行软件,dnf/yum.OpenStack.OpenShot.Blender. ...
- pythonide的作用_Linux程序员宝典:2020年10款出色的Python IDE!
Python是一种通用编程语言,可用于构建一切:从后端Web开发.数据分析.人工智能到科学计算,不一而足.它还可以用于开发生产力软件.游戏.桌面应用及其他软件. Python简单易学,语法和缩进结构简 ...
- 提供给开发者 10 款最好的 Python IDE
Python 非常易学,强大的编程语言.Python 包括高效高级的数据结构,提供简单且高效的面向对象编程. Python 的学习过程少不了 IDE 或者代码编辑器,或者集成的开发编辑器(IDE).这 ...
- python开发linux桌面应用_Linux程序员宝典:2020年10款出色的Python IDE!
Python是一种通用编程语言,可用于构建一切:从后端Web开发.数据分析.人工智能到科学计算,不一而足.它还可以用于开发生产力软件.游戏.桌面应用及其他软件. Python简单易学,语法和缩进结构简 ...
- 10 款最好的 Python IDE
Python 非常易学,强大的编程语言.Python 包括高效高级的数据结构,提供简单且高效的面向对象编程. Python 的学习过程少不了 IDE 或者代码编辑器,或者集成的开发编辑器(IDE).这 ...
- 推荐10 款最好的 Python IDE
Python 非常易学,强大的编程语言.Python 包括高效高级的数据结构,提供简单且高效的面向对象编程. Python 的学习过程少不了 IDE 或者代码编辑器,或者集成的开发编辑器(IDE).这 ...
- 启动ubuntu无反应_推荐一款优秀的Python IDE以及在Ubuntu下的安装
Wing Python IDE专为Python而设计,为您带来更高效的开发体验.现在可以通过Ubuntu 16.04,Ubuntu 18.04,Ubuntu 18.10,Ubuntu 19.04及更高 ...
- python自带ide和pycharm哪个好_排名前三的Python IDE你选择哪个?我选PyCharm
世界上最好的 Python 编辑器或 IDE 是什么?炫酷的界面.流畅的体验,我们投 PyCharm一票,那么你呢?编辑Python程序,您有许多选项.有些人仍然喜欢一个基本的文本编辑器,如Emacs ...
- 推荐10 款好用的 Python IDE
Python 非常易学,强大的编程语言.Python 包括高效高级的数据结构,提供简单且高效的面向对象编程. Python 的学习过程少不了 IDE 或者代码编辑器,或者集成的开发编辑器(IDE).这 ...
最新文章
- 开源 免费 java CMS - FreeCMS1.5-信息管理
- weidingma参考文献
- python-水仙花数
- 企业内部信息化项目管理之我所见
- Android之解决toolbar里面显示返回按钮图片太大和没有水平居中的问题
- ActiveMQ –经纪人网络解释–第5部分
- aic值检验 p值_23. 假设检验的时候为什么常写p lt; 0.05,而不写具体的p值?
- 怎么把3d风格的图变成2d_单图像三维重建、2D到3D风格迁移和3D DeepDream
- 手机计算机星点符号是除吗,手机星号怎么打
- HTML的学习---为了python爬虫网页
- AI教育公司北极星获数千万Pre-A 轮融资,估值2.5亿元
- IP地址字符串转换成16进制例程
- ppt怎么转换为pdf
- 【毕业设计】基于Stm32的便携体测仪(心率 体温) - 单片机 嵌入式 物联网
- 简练网软考知识点整理-项目整体绩效测量基准
- Timer实现数字时钟
- 跨平台渲染引擎之路:拨云见日
- 数学建模专栏 | 第十篇:MATLAB CUMCM真题求解实例一:数据型
- Elasticsearch - 是什么,以及应用场景
- 安卓开发——微信UI界面
热门文章
- leip与mysql数据库_性能分析方法 - osc_xm8bu282的个人空间 - OSCHINA - 中文开源技术交流社区...
- aes没有密码能解密吗_如果人体基因密码被破译,人类平均寿命能提高到1000岁吗?...
- React学习笔记一 JSX语法组件
- if....else的基本用法
- Sqlite3 ---------------用法
- android得到assets下面的资源
- informix的常用SQL语句
- OpenGL和D3D11中的深度模版测试
- Java的一些基础小知识之JVM与GC (转)
- apache配置文件“注解内容”全翻译