Istvan Albert wrote:
Steven Bethard wrote:

I promised I'd put together a PEP for a 'generic object' data type for Python 2.5 that allows one to replace __getitem__ style access with dotted-attribute style access (without declaring another class). Any comments would be appreciated!


IMHO this too easy to accomplish right now to warrant
an "official" implementation:

class Bunch:
    pass

b = Bunch()
b.one, b.two, b.three = 1,2,3

works just fine, depending on the problem I might add a few special
operators. For anything more complicated I'd rather write a real class.

You'll note that my implementation really isn't much more than this. (A little bit extra to make converting hierarchies easier.) The question is not how easy it is to write, but how many times it's going to get written. If you're going to write your 2-line Bunch class (which should probably be the 3-line Bunch class that uses new-style classes) a thousand times, I think including a class that does this for you (and provides a few other nice properties) is a Good Thing. If you're only ever going to use it once, then yes, there's probably no reason to include it in the stdlib.


The belief that I gathered from the end of the previous thread discussing this (check last week's python-list I think) was that there were a significant number of people who had wanted a class like this (notably IPython), and more than one of them had rewritten the class a few times.

Steve
--
http://mail.python.org/mailman/listinfo/python-list

Reply via email to