查看原文
其他

哪种Python IDE最适合你?这里有一份优缺点列表!

点击上方“Python数据科学”,星标公众号
重磅干货,第一时间送达


☞卧槽!当当又可以4折买书了!屯书薅羊毛了!!


选自GoogleAIblog
作者:Django Stars
机器之心编译,参与:魔王



写 Python 代码最好的方式莫过于使用集成开发环境(IDE)了。它们不仅能使你的工作更加简单、更具逻辑性,还能够提升编程体验和效率。


每个人都知道这一点。而问题在于,如何从众多选项中选择最好的 Python 开发环境。初级开发者往往面临这个问题。


本文将概述最受程序员欢迎的 Python 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。


原文链接:
https://djangostars.com/blog/python-ide/



赠送三本机器学习基础书籍

机器学习线性代数基础-Python语言描述


内容介绍:数学是机器学习绕不开的基础知识,传统教材的风格偏重理论定义和运算技巧,想以此高效地打下机器学习的数学基础,针对性和可读性并不佳。本书以机器学习涉及的线性代数核心知识为重点,进行新的尝试和突破:从坐标与变换、空间与映射、近似与拟合、相似与特征、降维与压缩这5个维度,环环相扣地展开线性代数与机器学习算法紧密结合的核心内容,并分析推荐系统和图像压缩两个实践案例,在介绍完核心概念后,还将线性代数的应用领域向函数空间和复数域中进行拓展与延伸;同时极力避免数学的晦涩枯燥,充分挖掘线性代数的几何内涵,并以Python语言为工具进行数学思想和解决方案的有效实践。 

  《机器学习线性代数基础:Python语言描述》适合实践于数据分析、信号处理等工程领域的读者,也适合在人工智能、机器学习领域进行理论学习和实践,希望筑牢数学基础的读者,以及正在进行线性代数课程学习的读者阅读。


赠送方式

关注下方公众号,回复:抽奖





推荐阅读


1、8个数据清洗Python代码,复制可用,最长11行

2、史上最全 | 数据分析技能详细拆解,一张图覆盖全流程知识细节和资源推荐

3、周志华教授报告:如何做研究与写论文?附完整pdf下载链接

4、吴恩达新书《Machine Learning Yearning》完整中文版(附下载)

5、资源 | 宾夕法尼亚大学计算机系教授1900页机器学习数学全书,附下载链接

6、北大开源了中文分词工具包,准确度远超Jieba,提供三个预训练模型


喜欢文章,点个在看

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

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