2012-07-11 42 views
8

我試圖設置Pylint只做某些檢查而沒有其他人,例如只檢查W0601和W0612。我試過使用enable=行我的pylint.rc的[MESSAGES CONTROL]部分,但似乎沒有做我想要的。如何設置Pylint只做一些檢查

我正在使用Pylint 0.25.1。

回答

9

看起來像解析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 
0

@aneroid:您可能是正確的,可能會有生成/讀取配置文件的順序問題;並且還應該記錄命令行中命令的重要性。我已經制定並相應地評論了您所參考的票證。

@ peter-graham,所以你可能不得不使用命令行來實現這一點,直到#36584票證被修復。我建議:

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

如果我嘗試使用'--disable-all',Pylint會給我'沒有這樣的選擇'。 'pylint --disable = I,C,R,W,E,F - 啓用= W0601,W0612'雖然有效。 – 2012-07-12 23:04:10

+0

'--disable = all'而不是'--disable-all' – kissgyorgy 2015-06-14 16:37:57

6

在pylint的> = 0.27有一個新的--disable=all選項

pylint --disable=all --enable=W0201

pylint -d all -e W0201

你可以把它在RC文件,但作爲無碼指出有一個錯誤仍然意味着你不能然後啓用的任何消息,除了命令行,所以:

[MESSAGES CONTROL] 
disable=all 

然後

pylint -e W0201

會工作。