Сравнение двух словарей и проверка того, сколько пар (ключ, значение) равны

У меня есть два словаря, но для упрощения я возьму эти два :

>>> x = dict(a=1, b=2)
>>> y = dict(a=2, b=2)

Теперь я хочу сравнить, имеет ли каждая пара ключ, значение в x такое же соответствующее значение в y . Итак, я написал это:

>>> for x_values, y_values in zip(x.iteritems(), y.iteritems()):
        if x_values == y_values:
            print 'Ok', x_values, y_values
        else:
            print 'Not', x_values, y_values

И это работает, так как кортеж возвращается и затем сравнивается на равенство.

Мои вопросы:

Это правильно? Есть ли лучший способ сделать это? Лучше не по скорости, я говорю об элегантности кода.

ОБНОВЛЕНИЕ: Я забыл упомянуть, что мне нужно проверить, сколько пар ключ, значение равны.

221
задан Mel 29 July 2019 в 05:15
поделиться

1 ответ

для python3:

data_set_a = dict_a.items()
data_set_b = dict_b.items()

difference_set = data_set_a ^ data_set_b
2
ответ дан 23 November 2019 в 04:02
поделиться
Другие вопросы по тегам:

Похожие вопросы: