Pelmen wrote: > How can I get rid of recursive call __getattr__ inside this method, if > i need to use method or property of the class? > Sorry, but I don't understand your question. Which recursive calls to __getattr__ ? __getattr__ is only called if a/ it's defined and b/ the attribute has not been found (see below).
Have you overriden __setattr__ or __getattribute__ ? If yes, please read the corresponding sections of the Fine Manual. >>> class Toto(object): ... def __init__(self, name): ... self.name = name ... def __getattr__(self, attname): ... print "__getattr__ called for %s" % attname ... return "%s doesn't exists" % attname ... >>> t = Toto('toto') >>> t.name = name Traceback (most recent call last): File "<stdin>", line 1, in ? NameError: name 'name' is not defined >>> t.name 'toto' >>> t.age __getattr__ called for age "age doesn't exists" -- bruno desthuilliers python -c "print '@'.join(['.'.join([w[::-1] for w in p.split('.')]) for p in '[EMAIL PROTECTED]'.split('@')])" -- http://mail.python.org/mailman/listinfo/python-list