Python 3.9+Словари (dict)понятие
d1 |= d2
операторы
Оператор обновления словаря на месте (Python 3.9+). Добавляет/перезаписывает в d1 все пары из d2 без создания нового объекта.
Синтаксис
d1 |= d2
Обновление идёт на месте, поэтому изменение видят все, кто ссылается на этот словарь — включая вызывающий код, если словарь пришёл аргументом в функцию. У |= есть послабление по сравнению с |: справа может стоять не только словарь, но и любой итерируемый набор пар ключ-значение, как у update(). До Python 3.9 оператора нет — там пишут update().
Примеры
config = {'debug': False, 'host': 'localhost'}
overrides = {'debug': True, 'port': 8080}
config |= overrides
print(config)
# → {'debug': True, 'host': 'localhost', 'port': 8080}
См. также
Открыть в полном глоссарииdocs.python.orgСообщить о неточности