每周分享五个 PyCharm 使用技巧(四)

文章首发于 微信公众号:Python编程时光html

PyCharm 是大多数 Python 开发者的首选 IDE,天天咱们都在上面敲着熟悉的代码,写出一个又一个奇妙的功能。git

一个天天都在使用的工具,若是能掌握一些高效的使用技巧,确定会给咱们的开发效率带来质的提高。今天我就来写一写我在平时开发中一直在用的,能够明显改善开发效率的使用技巧,一旦学会,受用一辈子。程序员

这是本系列 PyCharm 的高效使用技巧的第一篇。按照惯例,本次仍是分享 5 个。编程

本系列其余文章以下,若还没看的,你能够点击查阅vim

每周分享五个 PyCharm 使用技巧(一)
每周分享五个 PyCharm 使用技巧(二)
每周分享五个 PyCharm 使用技巧(三)
每周分享五个 PyCharm 使用技巧(四)
每周分享五个 PyCharm 使用技巧(五)windows

16. 快速定位到错误行

前几天打开 PyCharm,发如今导航栏这里出现了不少波浪线,有过 PyCharm 使用经验的同窗,就会知道,这是代码中出现了错误。微信

顺着波浪线,我一层一层地展开目录树,终于找到了那个包含错误的文件。因为是手误,我也不知道我改动了哪一行,看了下这个文件,有将近8000行的代码,难道一行一行地去找?app

不,这绝对不是使用 IDE 正确的方式。框架

遇到问题,就应该尝试去寻找快捷方法,有没有办法,能够一会儿定位到错误代码呢?运维

这时候,我想起了PyCharm 有提供给咱们一个 Keymap 的面板,能够很方便的设置、查询快捷键。说不定我在那里能够找到我想要的答案

我在搜索框输入 Error,就找到了快速定位到错误位置的快捷键 F2Shift+F2 能够快速的定位到错误行。

使用快捷键 F2 查看了下原来是这里缩进有问题。

17. 快速查看最近的修改

上面为了恢复由于手误形成的语法错误,我使用了快捷键来定位错误行,虽然解决了问题,但总有种绕了几个弯的感受。

假若有种方法,能够项目查看最近的修改记录的话(没有git作版本控制的状况下),那就太好了。

太巧的是,今天我打开 PyCharm ,就给我推了这条 tip,(在Mac上)使用 option+shift+C 能够快速查看最近修改的内容(windows 上应该是alt+shift+c吧)

18. 静态代码分析检查

对于编译型的语言,如 Java,须要将代码编译成机器可识别的语言才可运行,在编译过程当中,就能够经过分析或检查源程序的语法、结构、过程、接口等来检查程序的正确性,找出代码隐藏的错误和缺陷。这个过程叫作静态代码分析检查。

那对于 Python 这种解释型的语言来讲,代码是边运行边翻译的,不须要通过编译这个过程。不少肉眼没法一会儿看出的错误,一般都是跑一下(反正跑一下这么方便)才能发现。

因为Python 运行是如此的方便,以致于咱们都不太须要关注静态分析工具。

但也不是说,静态分析工具彻底没有用武之地,我认为仍是有。

若是你的编码能力尚未很成熟,代码中能够有许许多多的隐藏bug,因为 Python 是运行到的时候才解释,致使一次运行只能发现一个错误,要发现100个bug,要运行100次,数字有点夸大,其实就是想说,若是这么多的错误都能经过一次静态检查发现就立马修改,开发调试的效率就能够有所提高。固然啦,并非说全部的错误静态分析都能提早发现,这点但愿你不要误解。

作为 Python 最强 IDE,PyCharm自己内置了这个功能,不须要你安装任何插件。

你只须要像下面这样点击项目文件夹,而后右键,选择 Inspect Code,就能够开启静态检查。

我对开源组件 nova 的静态检查发现,其有不规范的地方有数千处。

19. 全方位无死角精准定位

一直以为使用鼠标是一种很是低效的习惯。

我热衷于使用各类键盘快捷键来提升操做的精准度,在编辑器上我能够至关熟练的使用 vim 指令完成我各类需求,所以我给 PyCharm 装上了ideaVim,给 Chrome 装上了 Vimium。

一样地阅读框架代码,我也都是使用全键盘进行操做。由于我有长期阅读 OpenStack 源码的需求,其代码量是数百万级别的。若是没有使用精准定位来快速跳转,这种极差的体验将很难使我坚持下来。

这里暂时先介绍几种我最经常使用的精准定位方法,主要能够定位跳转到以下三种

  • 精准定位到文件:Windows(Ctrl+Shift+N),Mac(Command+ shift +N)

  • 精准定位到类:Windows(Ctrl+N),Mac(Command+N)

  • 精准定位到符号:类的全部成员(函数、变量等)均可以称之为符号,Windows(Ctrl+Alt+Shift+N),Mac(Option+Shift+Command+N)

  • 精准定位到文件结构:文件结构包括类、函数、变量,这说明上面定位到类和定位到符号的方法,你均可以用这个来代替。

    Windows:Ctrl+F12,Mac:Command+F12,若是和我同样是Mac是带touchbar的,键盘上是没有F12的,那你应该先按住 Command + fn,这时 touchbar 上会出现 F12,再按F12便可。

  • 精准定位到某行:Windows(Ctrl+G),Mac(Command+G),以下图定位到第510行第9个字符处。

20. 利用 TODO 解救“中年痴呆”

一个程序员,若是可以一天都只和代码打交道,是一件多么可贵的事情。

可能外行人不知道,作为一样是程序员的你,是否是和我有同样的烦恼。

代码写着写着,测试忽然就喊道:小明,你的代码有bug,ug,g(回声)。。

代码写着写着,运维忽然一个弹窗:小明,这个线上问题赶忙排查一下。。

代码写着写着,产品忽然就跳出来:小明,能作一个根据手机壳颜色自动改变app主题的app不??

这样的噩梦天天都在重复不间断地上演着,或许我知道了为何程序员要在深夜里码代码了,由于那是白日里得不到的宁静。

因此 王建硕 在<< 入静和入世 >>一文中写道:

“当看到一个程序员左思右想的时候,不要过去打扰,甚至在极端的状况下,一句友好的问候都是多余的。 ”

为了不这个状况,我一般在别人打断个人时候,请对方给我一分钟的时间,使用PyCharn 的 TODO 功能快速记录下当前的思绪状态,以及下一步要作的事情。

使用方法跟注释差很少,只要固定要以 TODO 开头。而后,你要查看全局项目中的全部 TODO 事项的时候,可使用快捷键调出 TODO 面板。若是你是 Mac, 快捷键 是Command + 6,而 Windows 是 Alt+6。

另外,我还使用这个来记录下个版本要优化的代码逻辑,要添加的功能。

若是是比较紧急的 BUG,可使用相似 TODO 的标记 — FIXME 来区分紧急程度。


本系列 30 个 PyCharm 小技巧所有更新完毕了,你能够点击顶部的超连接进行学习。

但愿对你掌握和配置 PyCharm 会有帮助,想继续看文章的朋友,也能够关注个人公众号「Python编程时光」,全部的文章都会在那里首发,公众号里的文章我都通过精心的排版,阅读体验好。欢迎你们来订阅。


关注公众号,获取最新干货!

相关文章
相关标签/搜索