Вы можете легко смоделировать объединение, используя словари:
d1 = {"a": 1, "b": 2}
d2 = {"b": 3, "c": 4}
print dict((key, (d1[key], d2[key])) for key in d1 if key in d2)
{'b': (2, 3)}
Или последняя строка в Python 3.x:
print {key: (d1[key], d2[key]) for key in d1.keys() & d2.keys()}
{'b': (2, 3)}
(Строка 2.x также работает вPython 3.x, но использование &
для пересечения ключей словаря может ускорить процесс, если только маленький процент ключей d1
находится на пересечении.)
Я полагаюне знаю встроенного для этого в одном вызове функции.