[Tutor] dictionaries
alan.gauld@bt.com
alan.gauld@bt.com
Thu, 21 Feb 2002 12:11:44 -0000
> I would like to know why the C part of my dictionary when I
> update it from the 2nd one goes before B.
>>> x = "C"
>>> y = "3"
>>> dict2 = {x:y}
>>> dict.update(dict2)
>>> dict
> {'A': '1', 'C': '3', 'B': '2'}
Dictionaries do not guarantee order. Its part of the characteristics
of a dictionary(or hash table). Thats why if you want to process
a dictionary in order you have to get the keys into a list and
then sort them:
for key in mydict.keys().sort():
# process mydict[key]
If you want the full explanation look up a text book on how
hash tables work!
Alan g