Представьте себе следующий код:
class X(object):
def geta(self):
return self.__a
def seta(self, v):
self.__a = v
def __init__(self, a=0):
self.__a = a
a = property(geta, seta)
class Y(object):
def __init__(self, v):
self.X = X(v)
# !!! Here, not sure how to do it
a = X.a
x = X(12)
print x.a
x.a = 2
print x.a
print "-" * 79
y = Y(2)
print y.a
По сути, я хочу, чтобы class Y
наследовал class X
свойства.Так что Y.a
на самом деле перейдет к Y.X.a
.Поэтому, если я скажу: y = Y(2)
, а затем y.a = 2
, все должно быть так, как если бы я сделал y.X.a = 2
.
Возможно ли это?