Python中惯用Pycharm的同学对flake8、pylint这些静态检查工具的接受度如何?对yapf、black这类格式化工具呢?

准备在组内推行严格的静态检查和代码格式,之前都是靠人肉 review (:з)∠)
组内大多数同学都是用 Pycharm 的,我只知道 Pycharm 有一套自己可配置的检查工具和格式化工具,但是不知道惯用 Pycharm 的同学对标题里提到的工具有没有了解,Pycharm 本身对它们有没有提供方便的集成?
Python中惯用Pycharm的同学对flake8、pylint这些静态检查工具的接受度如何?对yapf、black这类格式化工具呢?

23 回复

个人用 vscode,用的是 flake8 和 yapf。感觉挺好用的,特别是 yapf,支持快捷键自动格式化代码。


用PyCharm的,对flake8和pylint接受度其实挺高的。PyCharm自带的检查已经很强了,但很多人还是会开着flake8,主要是为了统一团队风格,特别是用CI/CD的时候,flake8的配置(.flake8文件)比改PyCharm的规则方便。pylint检查更严格,报错也多,有些人觉得太啰嗦,但做严肃项目或者开源库的时候,用它来抓潜在问题很管用。

yapf和black这类格式化工具,现在几乎是标配了。特别是black,主张“不妥协”的格式化,虽然有些格式你可能不喜欢,但它彻底消除了代码风格的争论。PyCharm现在对black支持很好,可以配置成保存文件时自动用black格式化,或者用File Watchers实时跑。yapf配置更灵活些,但black因为“没得选”,反而更省心。

总结一下:静态检查工具用来兜底,格式化工具用来省事,两者在PyCharm里都能整合得很好。

静态检查?这费劲功夫还不如用 java 或者 go 重写了

pycharm 也可以设置 flake8 和 pylint 检测

pycharm 好像默认 pep8

https://i.loli.net/2018/09/25/5ba9de103895a.jpg
静态是在变量上按⌥+Enter 然后 Add Type
不过我没有组…

#1 VSCode 配置很方便,但是不太清楚 Pycharm 能不能很好地集成

#2 静态检查。。不是静态类型_(:з)∠)_

#3 可以做到 IDE 内的提示么?那就很好办了,有没有具体的方案指引一下🤪

#6 让大家都按照配置改 Pycharm 有点困难呀😂

pycharm 默认的是 pep8,pylint 远不如 pycharm 自带的好用

有个 export,没试过。毕竟我没有写 python 的队友…
https://ww1.sinaimg.cn/large/005YhI8igy1fwac3sk331j30z20xcgo2

#10 这个设置可以导入导出的吧

我们是配合 pre-commit 用。我用 pycharm,基本上不会有太多的代码质量问题

估计楼主没有深入研究过 pycharm, 自带的静态检查和代码格式工具比楼主这些散包强百倍,只是在于你愿不愿意多点两个鼠标。

(:з)∠) 有不用 pycharm 的小伙伴呀

我是打算写到 ci 里来着。。

🤪 哪些好用先不管,我只想把检查写进 ci 里~

强制所有人用 Pycharm 格式化功能吧

拓展工具添加 black

#20 这不可能呀,ci 没法跑就没法强制

回到顶部