dict order

cokofreedom at gmail.com cokofreedom at gmail.com
Wed Jun 18 12:32:48 CEST 2008


On Jun 18, 11:22 am, Robert Bossy <Robert.Bo... at jouy.inra.fr> wrote:
> Hi,
>
> I wish to know how two dict objects are compared. By browsing the
> archives I gathered that the number of items are first compared, but if
> the two dict objects have the same number of items, then the comparison
> algorithm was not mentioned.
>
> Note that I'm not trying to rely on this order. I'm building a
> domain-specific language where there's a data structure similar to
> python dict and I need an source of inspiration for implementing
> comparisons.
>
> Thanks
> RB

I'm a little confused as to what you want. Are you asking whether two
dictionary objects have the same keys AND values, or just the Keys?

As dictionaries are unordered the best technique is to go through one
dictionary and take out a key, then see if that key exists in the
other dictionary, and if so do they share the same values.

# untested 2.5
for keys in dict_one.items():
  if keys in dict_two:
    if dict_one[keys] != dict_two[keys]:
      # values are different
  else:
    # key is not present

This probably isn't the most efficient way, but can quickly find
differences...



More information about the Python-list mailing list