Python的IDE(Integrated Development Environment 集成开发环境)非常多,如:VS Code、Sublime、NotePad、Python自带编辑器IDLE、JuPyter、Eclipse + PyDev等等,但是对于项目开发、管理、部署等稍微大一点的项目,猪哥觉得还是PyCharm最好用!
2019年12月2日,PyCharm迎来了2019.3版本,这也许会是2019年的最后一个大版本,那这个版本增加了哪些新功能呢?我们一起来看看吧!
来源 | PyCharm官网整理 | 猪哥校正 | 豌豆花下猫
一、Jupyter
PyCharm 在 2019年里连续发布了2019.1 、2019.2 、 2019.3 三个大版本,对Jupyter进行改进,这让很多使用者感到欣慰,毕竟目前数据分析比较火,使用Jupyter Notebooks的开发者也越来越多。
注意此功能仅专业版才有!
1.交互式控件
为了提供更多的交互性,Jupyter notebooks支持称为“交互式控件”的功能。这些控件支持将静态笔记本转变为交互式的面板,从而使其他用户在查看你的笔记本时,可以自定义视图。
在此次更新中,PyCharm添加了对交互式控件的支持。这意味着窗口小部件将随着输出一起呈现,并且可以像处理本机Jupyter notebooks一样用于操作笔记。

2.运行时代码补全
PyCharm 的优势之一是借助先进的静态代码分析算法,可以实现智能编码提示。但是,对于动态语言(例如Python)而言,静态代码分析还不足够。这就是为什么在此次更新中,我们利用Jupyter本身提供的运行时信息来对其进行扩展。在某些情况下,例如在字典索引或深层嵌套的表达式中,IDE无法使用静态分析来找出其类型,而此次更新将会使代码补全变得更为智能。

3.在输出面板上放大和缩小
此次更新支持将预览的字体大小设置为与编辑器一致,或者在设置中进行自定义。编辑器提供了“使用Ctrl +鼠标滚轮更改字体大小(缩放)“选项。启用该选项后,你可以在按住Ctrl的同时,使用鼠标滚轮来放大或缩小预览。

二、Python
1.文件路径联想
害怕在写文件名时打错字?特别是有较长文件名时,例如open('data/ survey_data_28112019_exported.csv') ?现在,你可以在Python代码编辑器或控制台中获得文件路径建议。我们扩展了上下文感知的代码补全功能,因此上下文中与文件相关的字符串字面量可以为可能的文件路径提供建议。

2.支持相对import
与绝对import相比,你更喜欢相对import吗?PyCharm现在支持在这些风格之间自动地转换。如果你已经使用相对导入方式导入了某个程序包,那么所有新的从该程序包的导入也将自动创建为相对导入。

3.Python 3.8:TypedDicts
PyCharm 通过对TypedDict的支持,避免字典的错误赋值。为你的键值对结构提供更精确的展示,我们的代码编辑器能帮助你找到恰当的使用方法。

4.Python 3.8:字面量类型注解
你是否有采用特定字符串字面量的方法,例如带文件模式“open”方法?你可以使用Python 3.8的Literal 类型注解来检查类型,还可以检查特定的值。现在,当你调用的函数出现不支持的值时,PyCharm会出现告警。

5.自动创建pytest测试
我们升级了用于自动创建测试的工具,现在也支持pytest。有了这个,PyCharm允许你通过在方法声明的菜单中,仅仅单击“Go To | Test”选项,就自动创建pytest测试。

6.调试器:集V6i8XKKyXXniJ>XnhniK.ZKKKiYhyN88%6&x{;I6K[X{.hXXniJi{nXhhXKXniJY[ZxhhinXX[nX[nj8X{8#УG66fc#G&K>8vV.[XG&7hH^K>KxhУG&D55>{7G&УiKyJ4DNj~[YKK[yNKKxi>zyJK>z^XZ8#У7GFWBv6V"#"7&3GG3F&'22V"c#css#vC#CFVCFScvSc#CC6cBr#УG&"^y>67&Ni{nikk9^yNXУX8F>Kj~f67&N>xXY KiKjY>yJyNikk9^yNX.hiXX{>KyNY~nYX #У7GFWBv6V"#"7&3GG3F&'22V"cSC#cF&f33sscS3sCVcCcFRr#УiNZIyNiK{55>j~[^[XnKyJX[XXXizY55>KyJX[Xi^X6&;[KK[XhK{N8.Y"XKB6WGFVFF67G7G6VWG2552KX8.KiKX[nZ&W>yE&V7N{NKn6&;I&[nKN[nKKhiZ&W>yN{NKnyNK>z^XZ8#УG66fc#G&h{37G&7^Kh[ZJ~Z{6Z)KnikXxZZh[ |