Есть три основных способа объединить словари в Python, и лучший выбор зависит от версии Python и от того, нужен ли тебе новый словарь или обновление на месте.
Самый чистый современный подход использует оператор pipe |:
merged = d1 | d2
Это создаёт новый словарь без изменения исходных. Если оба словаря имеют одинаковые ключи, значения из d2 имеют приоритет.
До версии 3.9 стандартным подходом была распаковка обоих словарей в новый:
merged = {**d1, **d2}
Это тоже создаёт новый словарь и следует тому же правилу — значения d2 переопределяют d1 при дублирующихся ключах.
Метод update() работает во всех версиях Python и изменяет исходный словарь напрямую:
d1.update(d2)
d1 изменяется на местеd2 перезаписывают d1 при дублирующихся ключах| operator — Python 3.9+, возвращает новый словарь, самый чистый синтаксис{**d1, **d2} — Python 3.5+, возвращает новый словарь, широко совместимupdate() — все версии, изменяет исходный, новый объект не создаётсяОператор pipe | для объединения словарей создает новый словарь и доступен во всех версиях Python начиная с 3.5.
Новый — ещё не проверен сообществом
Вы