У меня есть два класса Foo и Foo2. Foo должен иметь атрибут generi c, который будет изменен позже с помощью экземпляра Foo2. Вот код:
from ctypes import *
class Foo(Structure):
_fields_ = [('address', c_uint32)]
_var = None
@property
def var(self):
return self._var
def __init__(self, var=0):
super(Foo, self).__init__()
self.var = var
@var.setter
def var(self, value):
self._var = value
class Foo2(Foo):
_fields_ = [('First', Foo),
('Second', Foo)]
def __init__(self):
super(Foo2, self).__init__(var=0)
Когда я пытаюсь сделать следующее:
b = Foo2()
b.var = 0xff
print(hex(b.var))
b.First.var = 0
b.Second.var = 1
print(b.First.var)
print(b.Second.var)
Я могу получить доступ и изменить только унаследованную переменную, но не переменную объектов Foo. Сначала и Во-вторых, как результат всегда нет. Чего мне не хватает?
Любая помощь очень ценится! Спасибо