Python编辑器
如果说精通 Python 语言,可以大大加速你写代码的效率。那么一款合适的编辑器,也能极大程度的帮你写好代码,更快地写代码。
编辑器就是你在写代码的时候用的文本编辑器,对于程序开发,你当然要有一个比较特殊的文本编辑器。这个编辑器还可以集成很多功能, 让你很方便地,很丝滑地写完代码。接下来我们看看几款我认为还不错的编辑器。包括 IDLE,PyCharm,Visual Studio Code,Jupyter Notebook, 甚至 莫烦 Python 的交互式学习 都能算上是一款编辑器。
IDLE¶
如果你之前学过 Python,我想你最开始学 Python 的时候,相信大部分都是用 Python 自带的一款 IDLE 来写代码。
这个是虽然获取起来很简单,因为是捆绑 Python 一起安装的嘛,但是真的很不好用。如果你还没接触过 Python 其他的编辑器的话,你或许觉得 IDLE 还行, 用起来挺方便的,但是只要你开始接触其他更高级的编辑器,你可能就会爱上其他的编辑器了。因为 IDLE 实在是太简陋了。
但是,IDLE 总有它适用的一些场景,我给大家举几个例子,如果你碰到一下的场景,你可以考虑直接用 IDLE。
- 平时不怎么写代码,写的很少,你也没必要专门跑去下载一个更大的编辑器,占你的内存,临时用 IDLE 写写代码就够了。
- 想训练自己的打代码感觉,不想借助别的工具辅助你。这个场景比较适合对任何语言都不了解的小白,一个个字敲出来肯定还是比别人辅助你记忆深刻。
- 懒得下载其他编辑器
如果你经常打代码,写程序,我绝对不会推荐你用 IDLE 的。
PyCharm¶
PyCharm 是一款我最喜欢用的编辑器,里面汇集了很多好用的功能,比如自动创建项目依赖, 非常丰富的 plugin 插件,git 的绑定,代码提示和补全等等。我平时都用它来写代码,运行代码,git 同步。
用 Pycharm 打代码的样子就像下面这样,你看到的编辑器风格可能和我不一样,我调整到黑色了,哈哈,程序员必备 theme。以前看我教学的同学还经常问我要我的代码高亮方案, 他们觉得很好看,我在这里特别提供一下。你可以点击这里下载我的 Pycharm 代码高亮方案。 然后在 Preferences > Editor > Color Scheme > Python 里找到 import 高亮文件。
在使用 PyCharm 的时候,你最开始的时候,最有可能被 Python 环境的加载弄得晕头转向的。这时,你得先确定是否有按照我前面安装 Python 那节内容,提前安装好你的 Python 环境。因为 Pycharm 只是一个编辑器,所以它不是自带 Python 解释器 interpreter 的,你可以从 PyCharm 里面安装 interpreter,也可以先自己安装一个,然后在 PyCharm 里面指定。
不管你是直接下载 Python 安装的,还是通过 conda 安装的,你都可以将通过这些途径安装好的 Python interpreter 添加进 PyCharm 管理起来。 甚至 PyCharm 还能为你管理多个 interpreters。
如果你 interpreter 中没有任何 Python 环境,你可以点击上图右边的小齿轮手动创建一个,或者添加一个已经安装好的 Python 环境。
配置好环境依赖以后,PyCharm 就会把你写好的代码放入这个环境依赖运行了。其他实用的功能,你在后续体验中也能一一发现。 我也列一下,你什么时候会需要用 PyCharm 来写代码吧。
- 会下载,懂配置 Python 环境
- 码农,打代码的频率十分高,一天不打,就一天不舒服
- 习惯于打完所有代码就运行的方式
- 能合理利用 Pycharm 来 debug 程序
- 我不仅仅只写一份代码了,要为一个项目写很多代码文件了,项目结构值得重视的时候,用 Pycharm 管理项目也是十分方便的
Visual Studio Code¶
Visual Studio Code 很多人都叫它 VSCode,它是一个比 PyCharm 更轻便的编辑器, 我有很多同事都喜欢用它来写代码,因为它不像 PyCharm 只是专注于 Python 的编辑器,而是各种语言都能用的编辑器。 论功能性的话,PyCharm 能有的重点功能都不会少,比如 git,代码高亮,代码提示等等。
从体验上来说的话,相比 PyCharm:
VSCode | PyCharm |
---|---|
更轻便 | 的深度用户经常被 PyCharm 占满内存 |
支持多语言 | 对 Python 支持好,如果是其他语言,推荐下载 JetBrains 其他全家桶 |
界面不够漂亮 | 我比较喜欢 PyCharm 的界面和风格 |
对某些组件的优化没有 PyCharm 好,比如 git | 写代码的配套设施比较完善 |
免费 | 有免费版 |
所以我的建议是,如果你是 Python 的深度用户,还是用 PyCharm 吧,如果你同时还要写其他语言的代码,用 VSCode 也不错, 或者多下几个 JetBrains 的编辑器。
VSCode 我用的不多,所以也不是很熟,只是身边很多程序员都有它,所以必定有它存在的价值。所以请你综合考量吧。
Jupyter Notebook¶
如果你是做机器学习,有很多人都喜欢用 Jupyter Notebook, 为什么呢?因为它不像一般的编辑器, 它还会将你的阶段性运行结果保存下来,边写代码边看结果。
如果你安装 Python 是通过 Anaconda 安装的话,Anaconda 就有 jupyter 的入口,可以直接打开。 Jupyter 的运行逻辑是怎样的呢?其实就是在你的电脑里启动一个 server 服务,然后你可以在浏览器里面写代码,也就是有点像 莫烦Python 这个交互式教学 一样。 只是说,莫烦Python 这个交互式教学是把代码运行框给你固定住了,你不能增加或删除。而 Jupyter 的网页上,你可以随意增加代码框(Cell)的个数, 并且写多媒体的文本描述。
简单来说,Jupyter 就是一个交互式的,可以在浏览器运行 localhost Python 服务的编辑器,中途还能像 莫烦Python 那样保存展示运行后的结果,供你直接观看,debug。 下面我来说一下我在什么场景下会用 Jupyter 吧,给你们做一个参考。
- 做课程的时候,给学生展示,可以一段代码一段代码(cell)运行,展示起来方便
- 做机器学习的时候,会有很多阶段,比如数据处理,模型训练等等,我经常会用一个 cell 来做数据处理,处理好的结果都没 cache 下来,然后我在创建一个新 cell 做模型训练,这样就不用每次都要全部重来,重新运行所有的运算了。
总结下来,只要你有分段运行,分段展示的需要;或者不想全部重新运行,需要缓存一些中间结果在内存中的时候,Jupyter 就是你的好帮手。
莫烦Python交互学习¶
哈哈,上面在说 Jupyter 的时候也提到了,如果硬要说,其实 莫烦Python 这个交互教学也是一款IDE编辑器哦。 只是它是专门为学习 莫烦Python 的同学们定制的一款编辑器,你可以在上面写代码,学代码,但是更自定义的一些功能, 莫烦Python 编辑器就不支持了,因为我也没打算支持。哈哈哈。
不过对比 Jupyter 有好处也有坏处,Jupyter 是在你本地搭建起一个 Python 服务,你可以在本机运行看到结果,莫烦Python 交互教学是直接在浏览器里加载运行,不需要你手动启动这个服务。 但是 Jupyter 可以安装更多的 Python 资源和库,莫烦Python 交互式编辑器就不行,因为被我阉割掉了。
总结¶
还有很多其他的编辑器,不过有很多都在时代的浪潮下被后浪推死在沙滩上了。如今比较流行的 Python 编辑器无非就是 PyCharm 和 VS Code。如果你做机器学习,Jupyter Notebook 也可以成为你的备选方案。