事例:dict.update を使って

>>> ex
{'A': 1, 'C': 3, 'B': 2}
>>> ex.update({"A":-1,"D":4})
>>> ex
{'A': -1, 'C': 3, 'B': 2, 'D': 4}

引数に指定した辞書 {"A":-1,"D":4} を使って、もとの辞書に上書きします。同じキー要素 'A' が存在するなら、その値要素 -1 を上書きします。同じキー要素 'D' が存在しないなら、その要素対 'D': 4 を追加します。

>>> ex
{'A': 1, 'C': 3, 'B': 2}
>>> ex.update(A=-1,D=4)
>>> ex
{'A': -1, 'C': 3, 'B': 2, 'D': 4}

同じことは、キーワード引数を使っても表現できます(ただし、この方法は、キー要素が文字列のときだけ通用します)。

>>> ex
{'A': 1, 'C': 3, 'B': 2}
>>> ex.update()
>>> ex
{'A': 1, 'C': 3, 'B': 2}

引数を省略すると、副作用を生じません。つまり、もとの辞書は更新されません。

>>> ex
{'A': 1, 'C': 3, 'B': 2}
>>> ex.update({"A":-1}, D=4)
>>> ex
{'A': -1, 'C': 3, 'B': 2, 'D': 4}

引数には、キーワード引数を混在できます。ただし、キーワード引数の後に他の引数を指定すると、次のように、

>>> ex.update(A=-1, {"D":4})
SyntaxError: non-keyword arg after keyword arg

例外 SyntaxError が発生して、エラーメッセージを出力します。