Pre-PEP: Dictionary accumulator methods

Greg Ewing greg at cosc.canterbury.ac.nz
Mon Mar 21 20:58:48 EST 2005


Michele Simionato wrote:

> def defaultdict(defaultfactory, dictclass=dict):
>     class defdict(dictclass):
>         def __getitem__(self, key):
>             try:
>                 return super(defdict, self).__getitem__(key)
>             except KeyError:
>                 return self.setdefault(key, defaultfactory())
>     return defdict

That looks really nice!

I'd prefer a more elegant name than 'defaultdict', though.
How about 'table'?

-- 
Greg Ewing, Computer Science Dept,
University of Canterbury,	
Christchurch, New Zealand
http://www.cosc.canterbury.ac.nz/~greg



More information about the Python-list mailing list