mattia wrote:
Il Tue, 22 Dec 2009 23:09:04 +0100, Peter Otten ha scritto:
mattia wrote:
Is there a function to initialize a dictionary? Right now I'm using:
d = {x+1:[] for x in range(50)}
Is there any better solution?
There is a dictionary variant that you don't have to initialize:
from collections import defaultdict
d = defaultdict(list)
Peter
...and it's also the only way to do something like:
def zero():
... return 0
...
d = defaultdict(zero)
In this case it's probably more Pythonic to do it this way:
>>> d = defaultdict(int)
s = ['one', 'two', 'three', 'four', 'two', 'two', 'one']
for x in s:
... d[x] += 1
...
d
defaultdict(<function zero at 0x00BA01E0>, {'four': 1, 'three': 1, 'two':
3, 'one': 2
})
--
http://mail.python.org/mailman/listinfo/python-list