У меня есть два словаря, но для упрощения я возьму эти два:
>>> x = dict(a=1, b=2)
>>> y = dict(a=2, b=2)
Теперь я хочу сравнить, имеет ли каждая пара key, value
в 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
И он работает, поскольку возвращается tuple
, а затем сравнивается для равенства.
Мои вопросы:
Это правильно? Есть лучший способ сделать это? Лучше не в скорости, я говорю об элегантности кода.
ОБНОВЛЕНИЕ: Я забыл упомянуть, что мне нужно проверить, сколько пар key, value
равно.