加入收藏 | 设为首页 | 会员中心 | 我要投稿 宜春站长网 (https://www.0795zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长资讯 > 传媒 > 正文

让你的Python代码保持一致

发布时间:2021-03-13 14:17:50 所属栏目:传媒 来源:互联网
导读:要争论代码复杂性时,Pylint 是你的朋友。 Pylint 是更高层级的 Python 样式强制程序。而 flake8 和 black 检查的是本地样式:换行位置、注释的格式、发现注释掉的代码或日志格式中的错误做法之类的问题。 默认情况下,Pylint 非常激进。它将对每样东西都提

要争论代码复杂性时,Pylint 是你的朋友。

Pylint 是更高层级的 Python 样式强制程序。而 flake8 和 black 检查的是“本地”样式:换行位置、注释的格式、发现注释掉的代码或日志格式中的错误做法之类的问题。

默认情况下,Pylint 非常激进。它将对每样东西都提供严厉的意见,从检查是否实际实现声明的接口到重构重复代码的可能性,这对新用户来说可能会很多。一种温和地将其引入项目或团队的方法是先关闭所有检查器,然后逐个启用检查器。如果你已经在使用 flake8、black 和 mypy,这尤其有用:Pylint 有相当多的检查器和它们在功能上重叠。

但是,Pylint 独有之处之一是能够强制执行更高级别的问题:例如,函数的行数或者类中方法的数量。

这些数字可能因项目而异,并且可能取决于开发团队的偏好。但是,一旦团队就参数达成一致,使用自动工具强制化这些参数非常有用。这是 Pylint 闪耀的地方。

配置 Pylint

要以空配置开始,请将 .pylintrc 设置为

一个有用的消息来源是“重构”检查器。我已启用一些最喜欢的消息有 consider-using-dict-comprehensionstop-iteration-return(它会查找正确的停止迭代的方式是 return 而使用了 raise StopIteration 的迭代器)和 chained-comparison,它将建议使用如 1 <= x < 5,而不是不太明显的 1 <= x && 5 > 5 的语法。

最后是一个在性能方面消耗很大的检查器,但它非常有用,就是 similarities。它会查找不同部分代码之间的复制粘贴来强制执行“不要重复自己”(DRY 原则)。它只启用一条消息:duplicate-code。默认的 “最小相似行数” 设置为 4。可以使用 .pylintrc 将其设置为不同的值。

(编辑:宜春站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读