我意识到这个问题与事件处理有关,而且我读过 Python 事件处理程序调度程序,所以要么它没有回答我的问题,要么我完全错过了这些信息。
我希望对象 A
的方法 m()
在值 v
改变时被触发:
例如(假设金钱使人快乐) :
global_wealth = 0
class Person()
def __init__(self):
self.wealth = 0
global global_wealth
# here is where attribute should be
# bound to changes in 'global_wealth'
self.happiness = bind_to(global_wealth, how_happy)
def how_happy(self, global_wealth):
return self.wealth / global_wealth
因此,每当 global_wealth
值发生更改时,类 Person
的所有实例都应该相应地更改它们的 happiness
值。
注意: 由于第一个版本似乎建议我需要 getter 和 setter 方法,所以我不得不编辑这个问题。抱歉给你添麻烦了。