CostumizatedClass - wo ist hier der bug
Verfasst: Samstag 2. Juni 2007, 12:14
irgendwie finde ich hier den bug nicht - hier wird der armen CostumizatedClass die ganze zeit die attribute __members__ und __methods__
angefordert. irgendwie ist das programm in einer endloschleife geraten (keine rekursive, kriege keinen StackError)
danke
[/code]
angefordert. irgendwie ist das programm in einer endloschleife geraten (keine rekursive, kriege keinen StackError)
danke
Code: Alles auswählen
from time import sleep
class CostumizatedClass(object):
def __getattr__(self, attr):
if not attr in dir(self): # dir liefert alle attribute einer classe/objekts
raise AttributeError, "attribut " + attr + " nicht vorhanden"
elif attr.startswith('printe_') and attr.endswith("_in_vier_sekunden"):
def retval():
sleep(4)
print attr[7:-17]
return retval
elif attr == "top_secret":
raise AttributeError, "you are not permited to acess this method"
else:
getattr(self, attr) # mit getattr kann man attribute eines objekts anhand eines strings fordern
def top_secret(self):
formatiere_hda1()
c = CostumizatedClass()
c.printe_hello_world_in_vier_sekunden()
c.top_secret