jtm*_*jtm 2 python pylint decorator pydev python-3.x
我有一个房产装饰师所以:
def Property(f):
"""
Allow readable properties without voodoo.
"""
fget, fset, fdel = f()
fdoc = f.__doc__
return property(fget, fset, fdel, fdoc)
Run Code Online (Sandbox Code Playgroud)
使用(例如)所以:
@Property
def method():
""""""
def fget(self):
return some expression...
return fget, None, None
Run Code Online (Sandbox Code Playgroud)
所以我的问题是关于这样做的python方式.Pydev抱怨说
"方法
method应该有自己作为第一个参数"
而且pylint给了我
方法没有争论
我知道我可以在pydev中关闭此错误消息,但我想知道是否有更好的方法来管理不将self作为参数的方法,我可以做得更好.
zee*_*kay 10
您可以使用@staticmethod创建一个不接收隐式第一个参数的方法.Python的@property装饰器是不是已经做了你想要的?
class Foo(object):
@property
def bar(self):
return 'foobar'
>>> foo = Foo()
>>> foo.bar
<<< 'foobar'
Run Code Online (Sandbox Code Playgroud)