[Tutor] iterating data and populating a dictionary
W W
srilyk at gmail.com
Thu Aug 7 14:42:37 CEST 2008
On Thu, Aug 7, 2008 at 12:42 AM, Shrutarshi Basu <technorapture at gmail.com>wrote:
> If you're just going to be using numbers as dictionary keys, it might
> be simpler just to use a list structure. Dictionaries don't preserve
> order, so you'd need to write extra code if you ever need to iterate
> over it in order.
It wouldn't be any (or at least much) more difficult than looping over a
list of known/unknown length.
Known length:
for x in range(0, length):
do something with mydict[x]
Unknown length, dict keys starting at 0:
for x in range(0, len(mydict)):
do something with mydict[x]
Known length, dict keys starting at 1:
for x in range(1, (len(mydict)+1)):
do something with mydict[x]
Probably not the most elegant solution, but it does work. I can't really
think of a particular reason it would be useful, though. The main reason a
dict is useful is for key values that won't change, and aren't easily kept
track of (i.e. names). It's a lot more difficult (at least for the
interpreter, as in processor cycles) to find "John Smith" in a list, than to
convert it to a hash value and look it up in a hash table.
HTH,
Wayne
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/tutor/attachments/20080807/a4778a23/attachment.htm>
More information about the Tutor
mailing list