我在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)
问题是:
#pylint
评论)?或dummy_game
和dummy_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]
答案 0 :(得分:15)
原来我缺少冒号:
我用过
pylint disable=no-self-use
什么时候应该是
pylint: disable=no-self-use
好吧,从现在开始,至少我将永远拥有最新的(以及为python3构建的)pylint:)
答案 1 :(得分:13)
您目前忽略此为
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)
:方法可以是函数当方法不使用其绑定实例时使用,因此可以写为函数。
如果整个文件只包含该界面的代码,您可以将其放在顶部:
# pylint: disable=R0201
class SomeInterface(object):
...
...
如果您还有其他代码,并且只想为接口类禁用此功能,则可以再次启用检查,如
# pylint: disable=R0201
class SomeInterface(object):
...
...
# pylint: enable=R0201
class AnotherClass(object):
...
...