如何设置Pylint只进行一些检查

时间:2012-07-11 23:14:48

标签: python pylint

我正在尝试将Pylint设置为仅进行某些检查而不进行其他检查,例如仅检查W0601和W0612。我尝试在我的pylint.rc的enable=部分使用[MESSAGES CONTROL]行,但这似乎不符合我的要求。

我正在使用Pylint 0.25.1。

3 个答案:

答案 0 :(得分:10)

看起来像是解析rc文件的方式的错误。

命令在命令行上是否重要(未记录?),因此您需要先禁用然后启用:

pylint xyz.py --disable R,C,W,E --enable W0601,W0612

--generate-rcfile无法正确反映此问题,但--rcfile无法正常使用...这些可能是错误。与#36584相似。

在带有禁用行的rc文件中,所有消息都被禁用,即使在命令行启用之前禁用也是如此。

[MESSAGES CONTROL]
disable=R,C,W,E
enable=W0601,W0612

答案 1 :(得分:8)

在Pylint> = 0.27中有一个新的--disable=all选项

pylint --disable=all --enable=W0201

pylint -d all -e W0201

你可以把它放在rc文件中但是因为 aneroid 指出有一个bug仍然意味着你不能再启用任何消息,除了命令行,所以:

[MESSAGES CONTROL]
disable=all

然后

pylint -e W0201

会起作用。

答案 2 :(得分:0)

@aneroid:在生成/读取配置文件时可能存在订单问题,这可能是正确的;而且应该记录命令行上的顺序事项这一事实。我已经计划并评论了你所提到的门票。

@ peter-graham,所以你可能必须使用命令行来实现这一点,直到#36584票证被修复。我建议:

pylint --disable-all --enable=W0601,W0612