Операторы слияния (|
) и обновления (|=
) для словарей были введены в Python 3.9 , поэтому они не работают в более старых версиях. У вас есть возможность обновить интерпретатор Python до Python 3,9 или использовать одну из альтернатив:
# option 1:
e = d1.copy()
e.update(d2)
# option 2:
e = {**d1, **d2}
Однако, если вы хотите обновить до Python 3.9 вы можете сохранить некоторый словарь обновления памяти d1
напрямую вместо создания другого словаря с помощью операции слияния на месте:
d1 |= d2
Что эквивалентно следующему в более старых версиях Python:
d1.update(d2)