Python Glossary English

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Сообщить о неточности