У меня есть два диктата, которые имеют одни и те же ключи, но имеют разные значения. Каждое значение представляет собой набор так:обновить набор внутри понимания dict?
d1 = {'a': set(["a","b","c"]), 'b': set(["x","y","c"])}
d2 = {'a': set(["a","b","yu"]), 'b': set(["x","y","ri"])}
Я хотел бы создать новую Dict, d3
, который содержит те же ключи, как d1
и d2
, но со значениями, которые являются результатом обновления каждого набором d1[key]
с d2[key]
Я хотел бы сделать это внутри Dict понимания, что-то вроде:
d3 = {k: d1[k].update(d2[k]) for k in d1}
Однако, результат:
d1[k].update(d2[k])
Конечно это None
, и я получаю Dict как:
d3 = {'a':None, 'b':None}
Любые идеи?
Вы могли бы предоставить ожидаемый результат, пожалуйста? – wastl
update() изменяет dict на месте, он не возвращает обновленный dict. Возвращаемое значение - None. –