folks, what's wrong with this?
John Nagle
nagle at animats.com
Fri Apr 2 15:36:44 EDT 2010
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
More information about the Python-list
mailing list