Python 如何评论 / ;记录Pylint在‑中的使用情况;线路选项?

Python 如何评论 / ;记录Pylint在‑中的使用情况;线路选项?,python,pylint,Python,Pylint,禁用Pylint检查或绕过其中一个警告,不应该没有明确的原因。我希望能够在我禁用它的地方评论这些原因;到目前为止,没有成功 举个例子,让一个类只包含一个构造函数和一个方法。Pylint发出警告的原因是有原因的,而本地禁用此警告的原因可能也同样多 class Foo(object): # pylint: disable=R0903 --- Closure object def __init__(self, data): … def single_method(

禁用Pylint检查或绕过其中一个警告,不应该没有明确的原因。我希望能够在我禁用它的地方评论这些原因;到目前为止,没有成功

举个例子,让一个类只包含一个构造函数和一个方法。Pylint发出警告的原因是有原因的,而本地禁用此警告的原因可能也同样多

class Foo(object):  # pylint: disable=R0903 --- Closure object

    def __init__(self, data):
        …

    def single_method(argument):
       …
在上述情况下,Pylint不仅仍然警告“公共方法太少”,甚至还抱怨“坏选项值‘R0903---Closure object’”

这个问题有一个比这个例子更广泛的rational(可能是我不知道有更好的方法在Python中实现闭包),为了清晰和简单,我希望能够在同一行上对大多数这些内嵌指令进行注释。顺便说一下,提醒一下选项的用途可能也很有用。例如,提醒
#pylint:disable=R0903--公共方法太少(无法停留在同一示例上)


简而言之:有没有办法在行指令中对Pylint进行注释?

Pylint不支持注释指令。但是从0.25.3开始,可以使用符号名称。如果您需要/想要注释,则必须使用第二行(我通常在Pylint指令上方添加注释)

这对我很有用:

class Foo(object):  # (Closure object) pylint: disable=R0903

def __init__(self, data):
    …

def single_method(argument):
   …
我的派林版本是

(doisub)> $ pylint --version                                              
pylint 1.5.4,
astroid 1.4.4
Python 2.7.11 (default, Dec 22 2015, 11:45:03)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-16)]

,您可以执行
#pylint:disable=无成员;这里的任何文本

“从0.25.3开始”:当我执行
pylint时--
版本是
pylint 1.3.0
。你确定提到的版本号吗?@Hibou57这是一个实际的pylint版本号,1.3.0>0.25.3:)所以这个版本很久以前就存在了,我从来不知道……这至少是问题答案的一部分。仍将等待选择此答案。