Python は 1 つの正しい方法があるように努めているため、property.getter の目的は何なのか疑問に思っています。この例では、WhyMe が getter を定義していますが、Other はそうではありません。
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
私はプロパティに慣れていません。ゲッターを作成することに利点があるのか 、それとも対称性のためにそこに置かれたのか疑問に思っていますか?