私はpygameとpythonを使いこなしています。クラスの属性が変更されたときに関数を呼び出せるようにしたいと考えています。私の現在のソリューション・ビーイング:クラス内のクラスの属性の変更を傍受する - Python
class ExampleClass(parentClass):
def __init__(self):
self.rect = pygame.rect.Rect(0,0,100,100)
def __setattr__(self, name, value):
parentClass.__setattr__(self,name,value)
dofancystuff()
Firstclass = ExampleClass()
これは正常に動作し、私はFirsclass.rect = pygame.rect.Rect(0,0,100,100)
でRECT値を変更するときdofancystuffが呼び出されます。しかし、私はFirstclass.rect.bottom = 3
と言う。 __setattr__
とそこにdofancystuffは呼ばれていません。
だから私の推測では、サブクラスの属性の変更をどのように傍受できますか?
編集:もし私がこれを間違った方法で行っているのであれば、私はそれがPythonに関してはあまり知られていないと教えてください。
AFAIK pdbはこの機能をまだサポートしていません。 – hochl