Bruno Desthuilliers wrote:
And now for the most import point: __getattr__ is only called as a *last* resort. That is, after the attribute lookup mechanism will have tried *and failed* to find the name in the instance's __dict__.
In general, "getattr" is for unusual situations only. If you want to store objects by name, use an ordinary dict. Using "getattr" means you have to worry about clashes with built-in names, the limitations of attribute syntax (BeautifulSoup can be crashed by this), and some Unicode issues with attribute names. So don't do that. John Nagle -- http://mail.python.org/mailman/listinfo/python-list