1.6 集成开发环境
集成开发环境(Integrated Development Environment,IDE)是专用于软件开发的程序。顾名思义,IDE集成了几款专门为软件开发而设计的工具。这些工具通常包括一个专门处理代码的编辑器(例如语法高亮和自动补全),构建、执行、调试工具和某种形式的源代码控制。
大部分的集成开发环境兼容多种编程语言并且包含更多功能,因此一般来说体积较大,需要时间去下载和安装,并且为了正确使用需要更高深的知识。
相比之下,一款特制的代码编辑器可以像带有语法高亮和代码格式化功能的文本编辑器一样简单。大多数优秀的代码编辑器都可以执行代码和控制调试器,并且也可以和源码控制系统进行最好的交互。与集成开发环境相比,出色的专用代码编辑器往往体积更小、更迅捷,但同时功能更少。
优秀的Python编程环境一般满足以下要求。
(1)保存和重载代码文件
如果一款集成开发环境或者编辑器不允许用户保存现有工作,并在之后重新打开时不能保持用户离开时的相同状态,那么它就不是什么集成开发环境。
(2)在环境内运行代码
类似的是,如果用户必须退出编辑器来运行Python代码,那么它就是一个普通的文本编辑器。
(3)支持调试
在程序运行时支持逐步运行代码是所有集成开发环境和大多数优秀代码编辑器必备的核心功能。
(4)语法高亮
支持对代码中的关键词、变量和符号进行快速标识,可以让用户阅读和理解代码更为轻松。
(5)自动补充代码格式
任何一个引人注目的编辑器或者集成开发环境都会在一个“while”或者“for”语句末端识别冒号,并且知道下一行应该缩进。
常用的IDE如下。
1.Eclipse+PyDev
Eclipse实际上是一款面向Java开发的,兼容Linux、Windows和OS X的集成开发环境。它拥有丰富的插件和扩展功能市场,这使得Eclipse适用于各种各样的开发项目。
PyDev是Python IDE中使用最普遍的,它是免费的,同时还提供很多强大的功能来支持高效的Python编程。它是一个运行在Eclipse上的开源插件,支持Python调试、代码补全和交互式Python控制台。在Eclipse中安装PyDev非常便捷,只需从Eclipse中选择“Help”,单击“Eclipse Marketplace”,然后搜索PyDev。单击安装,必要的时候重启Eclipse即可。
Eclipse可以在它的官方网站Eclipse.org中找到并下载,选择适合自己的Eclipse版本,比如Eclipse Classic。下载完成后解压到想安装的目录中即可。
运行Eclipse之后,选择“Help”→“Install New Software”,如图1-10所示。
图1-10 安装PyDev步骤1
单击“Add”,添加pydev的安装地址http://pydev.org/updates/,如图1-11所示。
图1-11 安装PyDev步骤2
完成后单击“ok”,接着单击PyDev的“+”,展开PyDev的节点,要等一小段时间,让它从网上获取PyDev的相关套件,当完成后会多出PyDev的相关套件在子节点里,勾选它们,然后单击“next”进行安装。
安装完成后,还需要设置一下PyDev,选择“Window”→“Preferences”来设置。然后设置Python的路径,从“Pydev”的“Interpreter-Python”页面选择“New”,如图1-12所示,会弹出一个窗口,选择安装Python的位置,如图1-13所示。
图1-12 安装PyDev步骤3
完成之后PyDev就设置完成了,并可以开始使用了。
2.PyCharm
PyCharm是最好的商业Python IDE,也是唯一一个专门面向Python的全功能集成开发环境,同样拥有付费版(专业版)和免费开源版(社区版)。PyCharm不论是在Windows中,Mac OSX系统中,还是在Linux系统中,都支持快速安装和使用。
开箱即用,PyCharm直接支持Python开发环境,打开一个新的文件,然后就可以开始编写代码。也可以在PyCharm中直接运行和调试Python程序,并且它支持源码管理和项目。
PyCharm最受欢迎的特性是它支持很多第三方Web开发框架,如Django、Pyramid、web2py、google app engine和Flask,这也使得它成为一个完整的快速应用集成开发环境。
3.Sublime Text
Sublime Text是一款非常流行的代码编辑器,其开发者是一名谷歌的工程师,他的梦想是使其成为更好的文本编辑器。Sublime Text支持Python代码编辑的同时兼容所有平台,并且丰富的插件(称为“包”)扩展了语法和编辑功能。
安装额外的Python扩展可能会比较棘手,Sublime Text中所有的包都是用Python写成的,并且安装社区扩展往往需要直接在Sublime Text中执行Python脚本。
图1-13 设置编译器
4.Spyder
Spyder是一款为数据科学工作流做了优化的开源Python集成开发环境。它附在Anaconda软件包管理器发行版中,它兼容Windows、macOS和Linux系统并且是一个完全开源软件。
Spyder引人注目的一点是其目标受众是使用Python的数据科学家们。举个例子来说,Spyder很好地集成了一些诸如SciPy、NumPy和Matplotlib这样的公共Python数据科学库。
Spyder拥有大部分集成开发环境该具备的功能,例如,具备强大语法高亮功能的代码编辑器、Python代码补全,甚至是集成文件浏览器。
它拥有其他Python编辑环境中没有的一个特殊功能,Spyder具有“变量浏览器”功能,它会以表格形式出现在集成开发环境界面右侧来展示数据。Spyder关于IPython或者说Jupyter的集成也做得非常好。
总之,作者认为Spyder比其他的集成开发环境更基本,作者更愿意把它看作一款专业工具,而不是日常使用的编辑环境。关于Spyder比较优秀的一点是,它兼容Windows、macOS和Linux系统并且是一个完全开源软件。