假设给出了以下代码,Python 2.7
class A:
def __init__(self, x):
self.x = x
@property
def x(self):
return self.__x
@x.setter
def x(self, x):
self.__x = x
self._y = self.x**2
我们有一个属性x
,一旦设置/更新,它也应该自动设置/更新属性_y
。 _y
仅用于其他功能的内部计算。到目前为止的动机。现在如果我做以下
>>> mytest = temp.A(2)
>>> mytest._y
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AttributeError: A instance has no attribute '_y'
>>>
是否无法通过属性设置多个属性?