PyCharm 插件推荐
Key Promoter
Key Promoter
就相当于一个快捷键管理大师,它时刻地在:
- 教导你,当下你的这个操作,应该使用哪个快捷操作来提高效率?
- 提醒你,当下你的这个操作,还没有设置快捷键,赶紧设置一个?
有了Key Promoter X
,你很快就能熟练地掌握快捷键,替代鼠标指日可待。
比如我使用reformat code
功能 ,它就会在右下角弹窗提示你该用哪个快捷键。
key promoter提示
下面以Key Promoter
为例,讲述PyCharm
插件离线安装(因为不可抗力部分插件不能被直接搜索安装)的步骤。
-
首先点击
about
查看PyCharm
版本,如图所示我安装的是18年的版本。
pycharm版本信息 -
打开jetbrains plugins,搜索
key promoter
。
key promoter插件主页 -
查看
versions
,选择适用IDE
的版本下载解压。
versions -
选择
plugin
→install plugin from disk
->open
->ok
。
pycharm安装插件
Regex Tester
Regex Tester
是PyCharm
的第三方插件,可以直接在PyCharm
中测试正则表达式。
安装后点击左下角方块,选择regex tester
。
Json Parser
在开发过程中,经常会把校验一串 JSON
字符串是否合法,以前的做法都是打开 https://www.json.cn/ 类似在线网站美化和校验JSON
,只有 JSON
格式都正确无误合法的才能够美化。
但是每次打开浏览器跳转到在线网站还是有一点麻烦,PyCharm
有一个插件专门来做这个事,那就是 JSON Parser
。在插件市场安装后,重启 PyCharm
,就能在右侧边栏中看到它。
Execute Selection in Console
** 该工具为pycharm自带功能不需要额外安装。**
当你想写一段简单的测试代码时,你是否还在为shell
中不能自动补全操作不便而烦恼,是否还在为在pycharm
新创建一个文件测试之后再删除的操作而纠结。
Execute Selection in Console
可以完全避开上面两种方式的缺点,它可以说是Run in Anywhere
。
只要在当前文件中,写好代码,然后光标选择后,右键点击 Execute Selection in Python Console
或者 使用快捷键option + shift + E
(windows
上是 alt + shift + E
)。
CodeGlance
如果你曾使用过 Sublime Text
或Vscode
,会发现其他IDE
很少有编辑器会像 Sublime
/Vscode
那样自带一个预览功能的滚动条。
要想在PyCharm
中使用这个预览滚动条,只要装上CodeGlance
这个插件IDE
右侧就会如Vscode
一样拥有一个预览功能的滚动条。
Inspect Code in PyCharm
该工具为pycharm自带功能不需要额外安装。
对于编译型的语言,如 Java
,需要将代码编译成机器可识别的语言才可运行,在编译过程中,就可以通过分析或检查源程序的语法、结构、过程、接口等来检查程序的正确性,找出代码隐藏的错误和缺陷。这个过程叫做静态代码分析检查。
那对于 Python
这种解释型的语言来说,代码是边运行边翻译的,不需要经过编译这个过程。很多肉眼无法一下子看出的错误,通常都是跑一下(反正跑一下这么方便)才能发现。
由于Python
运行是如此的方便,以至于我们都不太需要关注静态分析工具。但也不是说,静态分析工具完全没有用武之地。
如果你的编码能力还没有很成熟,代码中可以有许许多多的隐藏bug
,由于Python
是运行到的时候才解释,导致一次运行只能发现一个错误,要发现100
个bug
,要运行100
次,数字有点夸大,其实就是想说,如果这么多的错误都能通过一次静态检查发现就立马修改,开发调试的效率就可以有所提升。当然啦,并不是说所有的错误静态分析都能提前发现,这点希望你不要误解。
做为 Python
最强IDE
,PyCharm
本身内置了这个功能,不需要你安装任何插件。
你只需要像下面这样点击项目文件夹,然后右键,选择Inspect Code
,就可以开启静态检查。
Profile in PyCharm
** 这是专业才有的工具,不是插件,不需要安装**
在 Python
中有许多模块可以帮助你分析并找出你的项目中哪里出现了性能问题。
比如,常用的模块有 cProfile
,在某些框架中,也内置了中间件帮助你进行性能分析,比如 Django
,WSGI
。
PyCharm
本身就支持了这项功能。而且使用非常方便。
假设现在要分析如下这段代码的性能损耗情况,找出到底哪个函数耗时最多。
点击Run -> Profile 'xx'
,即可进行性能分析。完成后会出现一个性能统计界面窗口。
性能统计界面由Name
、Call Count
、Time(ms)
、Own Time(ms)
,4列组成一个表格,见下图。
- 表头
Name
显示被调用的模块或者函数 -
Call Coun
t显示被调用的次数; -
Time(ms)
显示运行时间和时间百分比,时间单位为毫秒(ms)。
点击表头上的小三角可以升序或降序排列表格。
在Name
这一个列中双击某一行可以跳转到对应的代码。
以fun4
这一行举例:fun4
被调用了一次,运行时间为1003ms
,占整个运行时间的16.7%
。
点击Call Graph
(调用关系图)界面直观展示了各函数直接的调用关系、运行时间和时间百分比,见下图。
调用关系图
右上角的4个按钮表示放大、缩小、真实大小、合适大小;
箭头表示调用关系,由调用者指向被调用者;
矩形的左上角显示模块或者函数的名称,右上角显示被调用的次数;
矩形中间显示运行时间和时间百分比;
矩形的颜色表示运行时间或者时间百分比大小的趋势:红色 > 黄绿色 > 绿色,由图可以看出fun3
的矩形为黄绿色,fun1
为绿色,所以fun3
运行时间比fun1
长。
从图中可以看出Test.py
直接调用了fun3
、fun1
、fun2
和fun5
函数。
而fun5
函数直接调用了fun4
函数,fun1
、fun2
、fun3
、fun4
和fun5
都直接调用了sleep
函数;整个测试代码运行的总时间为6018ms
,其中fun3
的运行时间为2004ms
,所占的时间百分比为33.3%
。