Ich möchte den Zugriff auf eine Variable in einer Klasse überschreiben, aber alle anderen normal zurückgeben. Wie erreiche ich das mit __getattribute__
?
Ich habe Folgendes versucht (was auch veranschaulichen sollte, was ich zu tun versuche), aber ich erhalte einen Rekursionsfehler:
class D(object): def __init__(self): self.test=20 self.test2=21 def __getattribute__(self,name): if name=="test": return 0. else: return self.__dict__[name] >>> print D().test 0.0 >>> print D().test2 ... RuntimeError: maximale Rekursionstiefe in cmp überschritten