Скажем, у меня есть очень простой тип данных:Возможно ли отслеживать список (или изменяемую последовательность), когда изменяется член списка?
class SimpleObject:
def __init__(self, property):
self.property = property
def update_property(self, value):
self.property = value
И я особый вид списка для хранения типа данных:
class SimpleList(collections.MutableSequence):
def update_useful_property_of_list(self, value):
self.useful_property_of_list = value
И хранить их:
simple1 = SimpleObject(1)
simple2 = SimpleObject(2)
simple_list = SimpleList([simple1, simple2])
Есть ли способ для объекта SimpleList
знать, когда изменяется одно из свойств его членов? Например, как я могу получить simple_list
выполнить self.update_useful_property_of_list()
, когда происходит нечто подобное:
simple1.update_property(3)
Я помню, что декораторы функций - это способ справиться с этим. Это может быть направление для изучения. – BlackVegetable
Это * шаблон дизайна наблюдателя *, вы можете легко найти источники об этом с помощью быстрого поиска. – utdemir
что вы хотите? –