Wie kann ich in einer übergeordneten Klasse, in der zwei Instanzen einer anderen Klasse erzeugt wurden, die Attribute der beiden Instanzen überwachen? Wenn sich ein Attribut in 'dataset_main_blade' ändert, soll eine Funktion 'match_values()' aufgerufen werden, die dann das Attribut in 'dataset_splitter_blade' auf den gleichen wert setzt.
Code: Alles auswählen
class Wheel:
def __init__(self):
self.dataset_main_blade = Dataset()
self.dataset_splitter_blade = Dataset()
# if shroud value changed in dataset_main_blade -->
# set shroud value in dataset_splitter_blade to the same value
# match_values()
def match_values(self):
self.dataset_splitter_blade.shroud_value = self.dataset_main_blade.shroud_value
class Dataset:
def __init__(self):
self._shroud_value = 0
self._hub_value = 0
@property
def shroud_value(self):
return self._shroud_value
@shroud_value.setter
def shroud_value(self, value):
print('previous actions...')
self._shroud_value = value
print('shroud value set to', value)
@property
def hub_value(self):
return self._hub_value
@hub_value.setter
def hub_value(self, value):
print('previous actions')
self._hub_value = value
print('hub value set to', value)