@kudinov-prog

Как объединить два словаря с одинаковыми ключами?

Какой самый простой способ объединить два словаря с одинаковыми ключами так, чтобы одному ключу сталисоответствать несколько значений ? dict3 = {"a1":["a2", "a4"], "a2":["a3", "a5"], "a3": "a5"}

dict1 = {"a1": "a2", "a2": "a3", "a3: a5"}
dict2 = {"a1": "a4", "a2": "a5"}
  • Вопрос задан
  • 2784 просмотра
Решения вопроса 1
netpastor
@netpastor
Python developer
Как вариант
In [1]: from collections import defaultdict

In [2]: dict1 = {"a1": "a2", "a2": "a3", "a3": "a5"}
   ...: dict2 = {"a1": "a4", "a2": "a5"}

In [3]: dd = defaultdict(list)

In [4]: for key in set(list(dict1.keys())+list(dict2.keys())):
   ...:     if key in dict1:
   ...:         dd[key].append(dict1[key])
   ...:     if key in dict2:
   ...:         dd[key].append(dict2[key])
   ...:

In [5]: dd
Out[5]: defaultdict(list, {'a2': ['a3', 'a5'], 'a1': ['a2', 'a4'], 'a3': ['a5']})
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы