Я знаю, что варианты по этому вопросу уже существуют, но я не могу найти тот, который точно соответствует тому, чего я пытаюсь достичь. У меня есть следующий код, который включал решение я взял из раствора на подобный вопрос:Сравните ключ/значения двух словарей и поместите в новый словарь
b = {"1":0,"2":0,"3":0,"4":0,"5":0}
c = {"1":1,"4":4,"5":5}
d = [k for k in b if c.get(k, object()) > b[k]]
print d
То, что я хочу, чтобы сравнить все ключевые и пары значений словаря b
с теми c
. Если пара ключей и значений отсутствует в c
, то значение ключа/пары b
сохраняется в словаре d
, иначе значения в c
сохраняются в d
.
В приведенном выше примере d
должен выглядеть следующим образом:
d = {"1":1,"2":0,"3":0,"4":4,"5":5}
Может кто-нибудь сказать мне правильный синтаксис, что нужно для линии d =
, пожалуйста?
Благодаря
код вы вывесили сравнивает значение 'c [k]' с 'b [k]', но ваше описание относится только к текущему или отсутствующему, а не «использовать значение в' c', если оно больше ».Что вы хотите, если 'c [" 4 "] == -6'? – DSM