大家好,今天是周五晚。刚好有时间来给大家更新 PyCharm 的使用技巧。
这个系列到今天已经是第五篇了,按照惯例,本次还是分享 5 个。
21. 随处折叠,实现代码自由
PyCharm 里代码块的折叠功能,相当的显眼,在代码编辑框的左侧,你可以发现有 +
也有 -
,很容易理解 +
代表代码块被折叠了可以点此展开,而 -
代表这个代码块处于展开状态可以点此折叠。
如果你和我一样是个键盘党,你可以使用快捷(Mac:按住Command键,再按+
或者-
)进行快速反折叠/折叠。
代码块的折叠和反折叠,应该是一个代码编辑器的基本功能。在这一点上, PyCharm 做为一个 IDE,在这一点上势必要做得更出色,事实证明,它做到了。
从上面,我们知道只有代码块才支持缩放,那什么样的代码PyCharm才会认为是一个代码块呢?其严格地定义我没有找到,从经验来看,一个类,一个函数,一个for循环,一个while循环,一个多行注释等都是代码块。都可以进行折叠、反折叠。
有时候,我们并不希望整块代码进行折叠,而只想对其他一大段暂时对我们无用的代码进行折叠。那能做到吗?
答案是可以的。
只要你先选中你想折叠的代码,再按住 Command (Windows:Ctrl键)紧接着按住 .
就可以了。效果如下:
(GIF动态只播放两次,重播请刷新页面)
22. 重构操作,一步到位
最近有一位同事走了,由我来接手他的全部工作。
可能由于我有代码洁癖,我花了一个星期对其代码进行了大量的重构。
重构代码,免不了要对变量进行重命名。
如果一个一个改,显然不太智能,要知道我们是在用IDE,你也许会说,用搜索全部替换不就行了?还真不行。
比如下面这段代码,我只想改myfun 里的的test_name,而对于全局下的同名变量是不应该修改的。如果你全局替换,就会有误伤。
这时候,我们如何做呢?
可以使用 PyCharm 的 Refactor 功能,它会自动匹配作用域,既做到批量更改,也做到不误伤。
操作方法很简单,先选中你的变量,然后使用快捷键 Shift+F6,就可以直接重命名了。
(GIF动态只播放两次,重播请刷新页面)
23. 复杂操作,录制成宏
如果你在使用PyCharm 的时候,遇到有一些操作是比较复杂(步骤多),且使用频率特别高。
那可以考虑一下,使用其自带的宏录制工具。
它会将你的一连串操作,录制下来。等你想用的时候,直接调用就行了。
这边,我以录制一个 删除函数
的宏为例:先按上面的方法折叠函数,再按 Command+y (Windows:Ctrl+y)删除该行,就删除了该函数。
做录制方法如下:
(GIF动态只播放两次,重播请刷新页面)
录制好后,你可以先定位到你要删除的函数处,点菜单栏 Edit - Macro 然后选择我们刚刚录制的宏,就可以播放宏了。
这样播放宏显得有点繁琐,个人建议你为这个宏定义一个快捷键,这样会更方便播放宏。
设置快捷键时,注意不要和已有的快捷键冲突。
设置好后,查看 Macro,发现PyCharm已经将这个快捷键绑定给这个宏。
之后你就可以使用这个快捷键删除一个函数(其实这只是删除一个代码块,因为这里只是为了演示设置方法而随便想了个例子)。
24. 多行标签页,一览无余
PyCharm 打开一个文件,就占用一个标签面。
你有没有发现,不知不觉地,打开的文件越来越多,多到一行标签都装不下,装不下的标签页 PyCharm 会将其隐藏起来,并以数字的形式告诉你隐藏了几个文件。
点击数字5,你才可以查看隐藏了哪些文件。
这时你肯定会说,一行装不下 PyCharm 为什么不能多行显示呢?
答案是,不是不能,而是需要你设置。
如下图,将单行显示取消勾选即可。
设置完后,有哪些文件就非常清晰了。
25. 应用搜索,阅读源码必备
你平时若有阅读框架源码的需求或习惯,那你一定要来掌握这个技能。
在阅读源码时,代码的入口、流程、走向特别重要。
假设你现在知道了一个特别关键的类,你特别想知道是哪里调用了这个类,你想知道源头,知道整个调用流程。
这个时候你如果使用全局搜索,就会有很多的干扰信息。你急需有一种方法,可以快速给你列出有哪些地方调用了这个类。
贴心的 PyCharm 早已为你准备好了一切。
快捷键:Mac:Command+Option+F7 ,Windows:Ctrl+Alt+F7
如下图所示,按下快捷键后可以很轻松地看见调用列表。
好了,本次的 PyCharm 使用技巧,就是这五个了,你学会了吗?
最后,感谢你的阅读,如果觉得文章对你有所帮助,还望你能帮忙分享、转发、点在看,这就是对我的最大支持。
大家在学python的时候肯定会遇到很多难题,以及对于新技术的追求,这里推荐一下我们的Python学习扣qun:784758214,这里是python学习者聚集地!!同时,自己是一名高级python开发工程师,从基础的python脚本到web开发、爬虫、django、数据挖掘等,零基础到项目实战的资料都有整理。送给每一位python的小伙伴!每日分享一些学习的方法和需要注意的小细节
点击:python技术分享交流
网友评论