ZURÜCKGEZOGEN
Verfasst: Dienstag 10. März 2009, 15:40
Wie kann ich in einer Klasse sowohl __init__ als auch __setattr__ definieren, wo doch jedes das andere voraussetzt? Zum Beispiel läuft folgender Phantasiecode natürlich nicht, aber es ist klar, was gemeint ist:
NACHTRAG: Tut mir leid. ich merke soeben, dass ganz einfach geht mit
Code: Alles auswählen
#FALSCH:
class Klasse(object):
def __init__(self,ampel):
self.ampel = ampel
def __setattr__(self,name,wert):
if self.ampel==True: self.__dict__[name] = wert
else: self.__dict__[name] = -wert
kl = Klasse(ampel=True)
kl.xx = 23
print kl.xx
NACHTRAG: Tut mir leid. ich merke soeben, dass ganz einfach geht mit
Code: Alles auswählen
self.__dict__['ampel'] = ampel