[Tutor] Careful Dictionary Building
doug shawhan
doug.shawhan at gmail.com
Fri Dec 28 17:22:51 CET 2007
I'm building a dictionary from a list with ~ 1M records.
Each record in the list is itself a list.
Each record in the list has a line number, (index 0) which I wish to use as
a dictionary key.
The problem: It is possible for two different records in the list to share
this line number. If they do, I want to append the record to the value in
the dictionary.
The obvious (lazy) method of searching for doubled lines requires building
and parsing a key list for every record. There must be a better way!
dict = {}
for record in list
if record[0] in dict.keys():
dict[ record[0] ].append( record )
else:
dict[ record[0] ] = [record]
Once you get ~ 80,000 records it starts slowing down pretty badly (I would
too ...).
Here's hoping there is a really fast, pythonic way of doing this!
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.python.org/pipermail/tutor/attachments/20071228/c44bfc92/attachment.htm
More information about the Tutor
mailing list