如何禁用pylint禁止自用警告?

2024-04-29 11:31:08 发布

您现在位置:Python中文网/ 问答频道 /正文

我用Python3编写代码,并使用pylint保持代码的干净。

我想定义一些类似接口类的东西,这样我就可以以简洁明了的方式添加更多的功能,但是pylint妨碍了这个目标的实现。

下面是一个示例方法:

def on_enter(self, dummy_game, dummy_player): #pylint disable=no-self-use
    """Defines effects when entering area."""
    return None

下面是pylint输出:

R: 70, 4: Method could be a function (no-self-use)

问题是:

  1. 如何抑制警告(注意#pylint注释)?或者
  2. 如何告诉pylint这只是一个接口(注意dummy_gamedummy_player

编辑: 输出pylint --version

pylint 1.2.1, 
astroid 1.1.1, common 0.61.0
Python 2.7.8 (default, Oct 20 2014, 15:05:19) 
[GCC 4.9.1]

Tags: no代码self功能game示例目标定义
2条回答

结果发现我缺少结肠:

我用过
pylint disable=no-self-use
什么时候应该
pylint: disable=no-self-use

好吧,至少从现在起我会一直拥有最新的(也是为Python3号建造的)挂架:)

您当前正在忽略此

def on_enter(self, dummy_game, dummy_player): #pylint disable=no-self-use
    ...

相反地

# pylint: disable=R0201
def on_enter(self, dummy_game, dummy_player): 
    ...

在文件中添加如下注释

# pylint: disable=R0201

对于documentation here上的每个警告/错误,您都可以找到简短的代码助记符:

no-self-use (R0201):

Method could be a function Used when a method doesn’t use its bound instance, and so could be written as a function.

如果整个文件仅包含接口的代码,则可以将其放在顶部:

# pylint: disable=R0201
class SomeInterface(object):
    ...
    ...

如果您还有其他代码,并且希望仅对接口类禁用此项,则可以像

# pylint: disable=R0201
class SomeInterface(object):
    ...
    ...

# pylint: enable=R0201

class AnotherClass(object):
    ...
    ...

相关问题 更多 >