comparing dictionaries

Miki miki.tebeka at gmail.com
Wed May 7 19:54:13 EDT 2008


Hello,

> I want to compare two dicts that should have identical info just in a
> different data structure. The first dict's contents look like this. It
> is authoritative... I know for sure it has the correct key value pairs:
>
> {'001' : '01'}
>
> The second dict's contents are like this with a tuple instead of a
> string for the key:
>
> {('This is one', '001'): '01'}
>
> Pseudo Code:
> for key, value in first_dict.iteritems():
>    # How do I do the following line?
>    if key not in second_dict or if it is, but has has the wrong value,
> then let me know
def cmp_dicts(first, second):
    return sorted(first.iteritems()) == \
           sorted(((k[1], v) for k, v in second.iteritems()))

Google for DSU (Decorate-Sort-Undecorate)

HTH,
--
Miki <miki.tebeka at gmail.com>
http://pythonwise.blogspot.com





More information about the Python-list mailing list