【发布时间】:2018-12-17 01:36:23
【问题描述】:
我正在研究属性,但无法理解 getter 的用法。
代码:
class A:
def __init__(self,p):
self._p = p
@property
def p(self):
return self._p
@p.setter
def p(self, value):
self._p = value
@p.getter
def p(self):
return self._p
所以,我做了以下
obj = A(10)
print(obj.p)
我得到以下输出:
10
所以,我想,@p.getter 被调用,_q 的值被返回。
但是,我尝试不使用@p.getter,如下所示
class A:
def __init__(self,p):
self._p = p
@property
def p(self):
return self._p
@p.setter
def p(self, value):
self._p = value
然后做了以下事情
obj = A(10)
print(obj.p)
即使这样我也得到了以下输出:
10
所以,我想知道,@p.getter 在这里的实际用途是什么,当@property 它自己能够给我们 _q 的值时
【问题讨论】:
标签: python properties getter-setter