由于 Python 力求找到一种正确的方法,我想知道 property.getter 的目的是什么。在此示例中,WhyMe 定义了一个 getter,但 Other 没有,所以我想知道 property.getter 仅使用属性的意义何在。
class WhyMe(object):
def __init__(self):
self._val = 44
@property
def val(self):
print 'I am not called'
return self._val
@val.getter # What advantage do I bring?
def val(self):
print 'getter called'
return self._val
class Other(object):
def __init__(self):
self._val = 44
@property
def val(self):
print 'I AM called'
return self._val
并使用它们:
>>> why = WhyMe()
>>> why.val
getter called
44
>>> other = Other()
>>> other.val
I AM called
44
我对属性并不陌生,我只是想知道制作吸气剂是否有一些优势,或者是否只是为了对称而放在那里?