对于任何数据科学家,业务分析师,数据分析师或程序员而言,大多数人都有自己编写代码的方式。
但在初学阶段,基本都有过一致的感受“我应该选哪个Python IDE?”,想要解决这个问题,很明显就需要先清楚“哪些工具能满足哪些需求,综合选出适合自己的”。
这也是今天这篇文章的目的,下文将会探讨5个较受欢迎的Python IDE以及各自的优势,相信看完,你会找出问题的答案。
Python IDE#1 – JupyterLab
Jupyter于2014年推出,是一个基于服务器-客户端结构的Web应用程序,它免费,开源且易于使用。非常适合分析和数据科学初学者。
盘点一下它的优势:提供了一个交互式输出,这意味着你可以编写代码并在那里进行测试。如果你处于初学阶段,这一点会很有用;
除了编写Python代码外,还可以使用markdown编辑器创建出色的笔记本,其中包含可视化效果和文本说明,甚至还可以编写Latex方程!
它将终端,文本编辑器,控制台和文件目录视图全部放在同一工作区,并且布局灵活;
使用各种魔术命令和notebook extensions,可以真正增强Jupyter的功能。比如添加自动格式化,调试,自动保存,自动代码完成等功能;
可以使用JupyterLab创建的笔记本下载各种格式,从pdf到.py文件,甚至可以作为演示幻灯片。
JupyterLab与Anaconda发行版捆绑在一起。它适用于Windows,Linux和macOS,所以要做的就是访问此网站(https://www.anaconda.com/products/individual)并根据自己的操作系统下载版本。
Python IDE#2 – Spyder
Spyder是一个轻量级,免费且开源的Python IDE。它完全用Python编写,专门为数据科学家和分析师设计。
与其他IDE相比而言,它的界面非常简单,但是具有在编码环境中所必需的组件。它由一个文本编辑器,文件资源管理器,变量资源管理器和IPython控制台组成,这些都在一个窗口中,与许多流行的科学软件包(包括NumPy,SciPy,Pandas,IPython等)进行了内置集成。
以下是Spyder提供的一些关键功能:一个相当不错的代码编辑器,具有语法突出显示,代码完成和实时代码分析等功能,可突出显示代码中的潜在问题或语法错误;
交互式代码执行,允许通过行,或者通过单元块,又或者一次运行整个文件来执行代码,选择完全取决于你!
如果只想测试几行代码而又不想中断主会话,IPython控制台可以帮到你;
变量编辑器可以显示当前选定的IPython Console会话的变量、函数、模块等。此外,还提供了一些内置的对象编辑支持,比如列表,字符串,元组等,并且有一个非常棒的功能,就是可以将其中一些显示为图片甚至是图表;
静态代码分析功能可以检测代码的样式问题,错误的做法,潜在的错误,以及其他质量问题,并且可以不用实际执行它;
有时候你会因为无法解决的错误而无法往下进行,调试器允许直接从Spyder GUI查看和控制断点以及执行流程;
探查器可以用于确定代码中需要优化以提高代码性能的语句(因为没有人是天生的程序员);
基本的Git版本控制系统,用于提交或浏览文件、目录或整个存储库;
历史记录日志窗口会记录在编辑器和IPython控制台中引入的所有命令;
“ 帮助”窗口提供了任何对象的详细说明。它提供有关模块,类,函数和方法的文档。可以从编辑器以及IPython控制台中访问它。
还有很多很酷的功能,例如智能自动缩进和自动冒号,更多具体的内容可以在Spyder的官方文档上找到。
鉴于其特性和功能,MATLAB用户将发现Spyder使用起来非常舒服。它预装了Anaconda发行版,你可能已经为Jupyter下载了该发行版。如果没有,可以直接访问官网下载。
Python IDE#3 – PyCharm
如果你正在从事包含多个相互交互的脚本的项目,那么这是一个值得使用的IDE。
让我们看看PyCharm有哪些优势?Pycharm的代码编辑器是首屈一指的。它具有语法和错误突出显示功能,代码分析功能,以及用于立即改进代码的快速修复程序。还有一些像自动代码生成,自动缩进,代码文件夹等其他功能。这使得在Pycharm中进行编码很舒服;
在PyCharm中启动新项目时,可以从Virtualenv,Pipenv或Conda等不同的环境中进行选择,通过创建隔离的Python环境,有助于将不同项目所需的依赖项分开;
PyCharm提供轻松的导航功能。可以搜索任何内容,还能在整个项目中找到符号的任何用法。如果正在处理大型项目,尤其是在同一项目中包含多个脚本的Web开发项目,这些功能会非常有用;
PyCharm的书签和TODO功能可以让你在代码中留下备注,以提醒下次浏览它们时进行必要的修改;
提供重构功能,以安全地重组代码。包括重命名,提取方法,内联局部变量,更改方法签名等;
PyCharm具有功能强大的调试器,其带有图形界面使得调试变得更容易;
具有集成的单元测试,可以以图形方式观察结果。默认情况下,PyCharm使用unittest作为测试运行程序,但也支持其他框架;
PyCharm具有集成的版本控制系统,可以跟踪对文件和应用程序所做的更改。它为CVS,Git,Mercurial,Perforce和Subversion提供了统一的用户界面;
可以使用插件向PyCharm添加其他功能,例如,除了已经存在的默认深色、浅色主题外,还可以添加新主题。
PyCharm适合希望使用Python创建软件应用程序的任何开发人员,无论是Web应用程序,数据科学应用程序,还是仅是简单的Python脚本。PyCharm可以快速高效的完成工作。
PyCharm有两个版本,一个免费的社区版本和一个收费的Professional版本,可以免费试用30天,适用于Windows,Linux或 macOS。可以进行尝试后再决定是否更换使用的IDE。
PyCharm可以说是资源密集型的IDE,需要大量的内存和存储空间。对于初学者来说可能有点吓人。
Python IDE#4 – PyDev
PyDev的IDE是Python IDE的Eclipse插件。于2003年开发,2009年开源。它可用于Python,Jython和IronPython开发。
以下是我最喜欢的PyDev功能:提供代码完成功能;
动态代码分析,可发现常见错误,例如未定义的变量,未使用的变量和导入,重复的签名,错误的缩进等等;
重构功能,例如重命名变量,方法,类和属性,提取方法和变量以及内联变量;
该调试器提供诸如条件断点,表达式求值,以及查看当前堆栈中变量的能力。此外,还具有远程调试功能,可以调试外部程序;
具有用于Python,Jython和IronPython的交互式控制台,具体取决于所使用的解释器;
PyDev通过可用的单元测试,nosetest或pytest格式提供单元测试功能;
基本语法突出显示和代码折叠,可以更好地访问代码区域;
Django预先安装了PyDev,因此在开发基于Django的Web应用程序时会比较流畅。
有两种方法可以在本地计算机上安装PyDev。如果已经在Eclipse中使用Java,那么将其作为插件安装就很容易了。
但是,有一些要求(如Java 8,Python(2.3或更高版本)和Eclipse(neon onwards))以这种方式安装PyDev,可在这个网址查看方法:
推荐使用PyDev的方法是安装LiClipse,该工具将PyDev与轻量级编辑器捆绑在一起。另外,建议开始使用PyDev之前先阅读入门指南,以轻松设置PyDev环境。
Python IDE#5 – Visual Studi
等等,Visual Studio?用来Python编程?这里发生了什么?
Visual Studio或VS是Microsoft开发的另一种很棒的Python IDE ,但仅适用于Windows和macOS用户。它具有免费的社区版本以及付费的专业版和企业版。它属于轻量级的,并具有一定的扩展市场。
VS提供了使用Django和Flask构建Python Web应用程序的支持,以及具有内置Conda和IPython支持的Data Science应用程序的支持。
Visual Studio for Python有哪些独特的功能?Visual Studio的代码编辑器以IntelliSense语法为指导,该语法提供自动完成功能,函数和类的类型提示,签名帮助,快速信息工具提示以及代码着色;
它具有可通过快捷方式将代码片段插入文件中的代码段;
VS除了默认的PEP-8样式格式设置外,还具有许多预配置的格式化选项;
VS中的重构也非常简洁,提供了重命名,提取方法,添加导入以及删除未使用的导入等选项;
Microsoft已将PyLint集成到Visual Studio中,该工具可检查Python代码中的错误,并鼓励使用良好的Python编码模式。
Visual Studio提供了一个交互式的读取-评估-打印循环(REPL)窗口,可以通过该窗口输入任意Python代码并查看即时结果。在尝试新的API或库时,这个功能会非常有用;
除了在代码中添加断点之外,调试器还允许检查和修改变量值,或插入任意Python表达式并查看其结果。并且还可以使用功能更丰富的“ Python调试交互”窗口,因为它提供了交互式REPL调试体验;
它还具有通过unittest或pytest框架进行单元测试的功能;
如果要使用Flask或Django构建Web应用程序,则它是一个很棒的IDE 。通过Visual Studio的虚拟环境支持,下载这些库和其他依赖项非常容易,并且无需编写任何代码行;
Visual Studio在GitHub和Azure Repos上提供了与本地Git存储库和远程存储库的集成。可以克隆存储库,提交更改并通过这些集成管理分支。
VS还允许使用大量其他的工具,例如SQL,Unity,.NET,Node.js等。因此,对于任何希望为设备,云或两者之间的应用创建出色应用程序的人来说,Visual Studio都非常适合。
由于VS提供了对多个工具和组件捆绑包的支持,因此应该只下载自己需要的工具和组件就可以。下载此IDE可能会花费一些时间,但是一旦安装,你就很难去抱怨它了。
哪个是最适合你的Python IDE?
哪个是最好的Python IDE?坦白讲确实没有正确或错误的答案。
这个问题其实完全取决于你的需求和要求。如果是初学者或正在研究单个脚本,则可能倾向于使用Jupyter或Spyder。
但是对于中级或高级用户而言,PyCharm,PyDev或Visual Studio可能是更好的选择。PyDev特别适合于以前已经在Eclipse环境中工作过的开发人员。
以上,希望对各位有所帮助~