Answers:
Pylint信息控件记录在Pylint手册中:
是否可以在本地禁用特定消息?
是的,此功能已在Pylint 0.11中添加。这可以通过
# pylint: disable=some-message,another-one
在所需的块级别或所需的代码行的末尾添加来完成
您可以使用消息代码或符号名。
例如
def test():
# Disable all the no-member violations in this function
# pylint: disable=no-member
...
global VAR # pylint: disable=global-statement
该手册还有更多示例。
有一个Wiki,记录所有pylint消息及其代码。
import config.logging_settings # pylint: disable=W0611
这很简单,并且专门针对该行。
正如sthenault所指出的那样,您可以并且应该使用更具可读性的形式:
import config.logging_settings # pylint: disable=unused-import
unused-import
?我认为当我使用W0611时,我的短绒棉给了我警告,但警告时间超过3年,所以我不记得了:/对不起
我相信您正在寻找的是...
import config.logging_settings # @UnusedImport
注意注释前的双倍空格,以免出现其他格式警告。
另外,根据您的IDE(如果使用的是IDE),可能有一个选项可以添加正确的忽略规则(例如,Ctrl1在光标悬停时按eclipse键,警告将自动建议@UnusedImport
emacs/flycheck
。谢谢。请保留答案,因为它可能会对其他人有所帮助。
pylint
或flake8
从命令行运行时,此功能不起作用。
在https://github.com/PyCQA/pylint/tree/master/pylint/checkers中检出文件。我没有找到比Ctrl + F-ing这些文件或使用Github搜索功能更好的从消息中获取错误名称的方法:
如果消息是“模块...中没有名称...”,请使用搜索:
No name %r in module %r repo:PyCQA/pylint/tree/master path:/pylint/checkers
或者,为了获得更少的结果:
"No name %r in module %r" repo:PyCQA/pylint/tree/master path:/pylint/checkers
Github将向您展示:
"E0611": (
"No name %r in module %r",
"no-name-in-module",
"Used when a name cannot be found in a module.",
然后,您可以执行以下操作:
from collections import Sequence # pylint: disable=no-name-in-module
# noqa
。我不想在代码中看到太多注释。# nolint
会更加清晰。