查看原文
其他

Python | 集成开发环境和代码编辑器

Quinn_W 计算机与网络安全 2022-06-01

信息安全公益宣传,信息安全知识启蒙。

加微信群回复公众号:微信群;QQ群:16004488

加微信群或QQ群可免费索取:学习教程

教程列表见微信公众号底部菜单


支持Python的通用编辑器和集成开发环境

Eclipse + PyDev

类别:集成开发环境

网址: www.eclipse.org

Python工具:PyDev, www.pydev.org

如果你足够关注开源社区,那么你一定听说过Eclipse。Eclipse实际上是一款面向Java开发的兼容Linux, Windows和OS X的集成开发环境。它拥有丰富的插件和扩展功能市场,这使得Eclipse适用于各种各样的开发项目。

其中一个插件就是PyDev,它支持Python调试、代码补全和交互式Python控制台。在Eclipse中安装PyDev非常便捷,只需从Eclipse中选择“Help”点击“Eclipse Marketplace”然后搜索PyDev。点击安装,必要的时候重启Eclipse即可。

优点:如果你已经安装了Eclipse,安装PyDev是非常方便快捷的,对于资深Eclipse开发者来说,PyDev是几乎不需要另行学习的。

缺点:如果你只是一个Python初学者或者软件开发小白,掌握Eclipse还有很长的路要走。记得我说过集成开发环境往往体积较大并且需要更多的知识去正确使用,那么Eclipse正是如此并且就像一袋子小芯片一样需要你逐一了解。


Sublime Text

类别:代码编辑器

网址:http://www.sublimetext.com

Sublime Text是一款非常流行的代码编辑器,其开发者是一名谷歌的工程师,其梦想是使之成为更好的文本编辑器。Sublime Text支持Python代码编辑同时兼容所有平台,并且丰富的插件(称之为“包”)扩展了语法和编辑功能。

安装额外的Python扩展可能会比较棘手,Sublime Text中所有的包都是用Python写成的,并且安装社区扩展往往需要直接在Sublime Text中执行Python脚本。

优点:Sublime Text在编程社区内很受推崇。单单从代码编辑器的角度来看,Sublime Text迅捷小巧并且具有良好的兼容性。

缺点:尽管你可以无限期的使用测试版本但是Sublime Text不是免费软件。在Sublime Text中安装扩展插件可能会比较棘手,另外并不支持直接在编辑器内部执行或调试代码。

为了充分利用Sublime Text设置,你可以阅读我们的Python+Sublime Text设置指南,或者观看我们更深层次的视频教学,这会帮助你在Sublime Text 3中建立一个高效的Python开发环境。


Atom

类别:代码编辑器

网址:https://atom.io/

同样兼容所有平台的Atom被称为是“21世纪可破解的文本编辑器”。开源的Atom拥有时尚的界面、文件系统浏览器和扩展插件市场,它是使用Electron构建的,Electron使用JavaScript、HTML和CSS构建跨平台的桌面应用。Python语言由一款可在Atom运行时安装的扩展插件支持。

优点:得益于Electron,Atom广泛兼容各大平台。同样Atom小巧且下载和载入都非常迅速。

缺点:内置并不支持构建和调试,这些功能是由社区提供支持的。同样由于Atom建立在Electron框架上,所以它始终运行在JavaScript进程中而不是作为本地应用运行。


GNU Emacs

类别:代码编辑器

网址:https://www.gnu.org/software/emacs/

让我们回到iPhone和Android之战前,在Linux和Windows的战争之前甚至是在PC和Mac的战争前,有一场“编辑器之战”。而GNU Emacs就是战斗中的一员。伴随着狂热的追随,被称作“可扩展、可定制、自动记录、实时显示的编辑器”GNU Emacs几乎一直萦绕在UNIX周围。

终身免费且兼容任何平台(以某种形式),GNU Emacs使用强大的Lisp编程语言进行定制,并为Python开发提供各种定制脚本。

优点:了解了 Emacs,使用过 Emacs,你便会爱上 Emacs,Lisp作为第二语言,你清楚它给你的力量可以让你为所欲为。

缺点:定制化意味着向多种多样的脚本文件中编写(或复制粘贴)Lisp,如果没有他人提供,那么你必须去学习Lisp并且搞懂它是如何运行的。另外,Emacs是一款非常优秀的操作系统,如果它仅仅被当作一款优秀的文本编辑器....

请务必参考我们的Python + Emacs设置指南来进行设置。


VI/VIM

类别:代码编辑器

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

在文本编辑器战场另一侧是VI(又名VIM),默认安装在几乎每一个UNIX系统和Mac OS X系统中,VI有着同样的狂热追随。VI和VIM是一种模型编辑器,它将文本查看从文本编辑中分离。VIM在原始VI之上做了诸多改进,包括可扩展模型和就地代码构建。VIMScripts可用于各种Python开发任务。

优点:了解了VI,使用过 VI,你也会爱上 VI。VIMScripts并不会吓退你,并且你可以按你的意愿去做。

缺点:就像Emacs一样,你可能并不适应为了支持Python开发环境自行查找或者撰写脚本,此外你可能并不清楚模型编辑器是如何工作的。另外,VI是一款不错的文本编辑器当且仅当它拥有一个出色的操作系统。

如果您要使用这种组合,请参阅我们的Python + VIM安装指南,我们将为您提供提示和插件建议。


Visual Studio

类型:集成开发平台

网址:https://www.visualstudio.com/vs/

Python工具:Python Tools for Visual Studio, 也称PTVS

与Eclipse进行多方面比较,由Microsoft建立的Visual Studio是一款全功能集成开发平台。VS仅兼容Windows和Mac OS系统,它既提供了免费版(社区版)也提供了付费版(专业版和企业版)。VS支持各种平台的开发,并且附带了自己的扩展插件市场。

Python Tools for Visual Studio (又名PTVS)实现了在VS中进行Python编程并且支持Python智能感知、调试和其他工具。

优点:就像Eclipse一样,如果你已经因为其他开发程序安装了VS那么添加PTVS时非常便捷的。

缺点:和Eclipse相同如果仅仅为了Python,那么VS是一个大型下载任务。另外如果你是Linux系统,那你并不走运,因为VS并不支持Linux平台。


Visual Studio Code

类别:代码编辑器

网址:https://code.visualstudio.com/

Python工具:https://marketplace.visualstudio.com/items?itemName=ms-python.python

不要与完全版的VS混淆,Visual Studio Code(也称作VS Code)是一款兼容Linux,Mac OS X和Windows 平台的全功能代码编辑器。麻雀虽小但五脏俱全,VS Code开源、可扩展并且可以对几乎所有任务进行配置。就像Atom一样,VS Code建立在Electron基础之上,因此它具有相同的优点和缺点。

在VS Code中安装Python支持插件非常简单,它的市场是一个快速点击按钮。只需要搜索Python,点击安装然后必要的时候重新启动,VS Code就会自动识别你的Python安装和库。

优点:同样归功于Electron,VS Code支持所有开发平台,同样令人惊喜的是小巧的体格却蕴含了丰富的功能,同时它也是开源的。

缺点:Electron的使用意味着VS Code不是本地应用。另外,有些人可能从原则上并不使用Microsoft资源。


Python专用的编辑器和集成开发环境

PyCharm

类别:集成开发环境

网址:https://www.jetbrains.com/pycharm/

PyCharm是最好的一个(也是唯一一个)专门面向于Python的全功能集成开发环境。同样拥有付费版(专业版)和免费开源版(社区版),PyCharm不论是在Windows, Mac OS X系统中, 还是在Linux系统中都支持快速安装和使用。

开箱即用,PyCharm直接支持Python开发环境,打开一个新的文件然后就可以开始编写代码。你也可以在PyCharm中直接运行和调试Python程序,并且它支持源码管理和项目。

优点:这是真正的Python集成开发环境,拥有众多便利和支持社区。它的编辑、运行和调试功能统统开箱即用。

缺点:PyCharm存在加载较慢的问题,另外对于已有的项目,默认设置可能需要调整。


Spyder

类别:集成开发环境

网址:https://github.com/spyder-ide/spyder

Spyder是一款为了数据科学工作流做了优化的开源Python集成开发环境。它是附在Anaconda软件包管理器发行版中的,因此根据你的设置,或许你已经在机器中安装了Spyder。

Spyder引人注目的一点是其目标受众是使用Python的数据科学家们。你一定会留意到这一点,举个例子来说,Spyder很好的集成了一些诸如SciPy、NumPy和Matplotlib这样的公共Python数据科学库。

Spyder拥有大部分你所期待的集成开发环境该具备的功能,例如具备强大语法高亮功能的代码编辑器,Python代码补全,甚至是集成文件浏览器。

我从未在其他Python编辑环境中见过的一个特殊功能是Spyder的“变量浏览器”功能,它会以表格形式出现在集成开发环境界面右侧来展示数据。就我个人来说,虽然我并不十分需要这个功能,但是它看起来的确很整洁。如果你是一位日常用Python做数据科学工作的人,那你一定会深深爱上这个独特的功能。Spyder关于IPython或者说Jupyter的集成也做得非常好。

总之,我认为Spyder比其他的集成开发环境更基本,我更愿意把它看做是一款专业工具而不是我日常使用的编辑环境。关于Spyder比较优秀的一点是它兼容Windows、macOS和 Linux系统并且是一个完全开源软件。

优点:当你是使用Anaconda Python发行版的数据科学家时你会爱上它。

缺点:更有经验的Python开发人员可能会觉得Spyder太基本了以至于不能支持每日所需的基本工作,这样的话还不如选择一个更为完整的集成开发环境或者定制编辑器解决方案。


Thonny

类别:集成开发环境

网址:http://thonny.org/

作为Python集成开发环境大家庭中的新成员,Thonny被称作是针对新手的一款集成开发环境。由爱沙尼亚塔尔图大学的计算机科学学院开发并维护的Thonny适用于全部主流平台,并且在网站上附有安装指南。

默认情况下,Thonny会和自带捆绑的Python版本一起安装,所以你不需要再安装什么新的东西。更有经验的老手可能需要调整这个设置以便找到和使用已安装的库。

优点:你是一名Python新人小白,并且一切就绪需要一款集成开发环境的时候你会选择它。

缺点:更有经验的Python老手可能会觉得Thonny同样太基础了,并且其内置解释器只是一个工作场合,而不是一个可以与之共事的工具。此外,作为一款新兴工具,你在遇到问题时很有可能发现没有现成的解决方法。


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

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