マップ型のキーがないときの値の指定方法。
通常、存在しないキーにアクセスするとKeyErrorになります。
>>> a = {}
>>> a['k']
Traceback (most recent call last):
File "<stdin>", line 1, in ?
KeyError: 'k'
get()を使用すると、キーがないときの値を指定できます。
オブジェクト自身は変更されません。
>>> a = {}
>>> a.get('k', '123')
'123'
>>> a
{}
setdefault()はキーがなければ、キーと値を設定します。
get()と違い、オブジェクトは変更されます。
キーがすでに登録されている場合は、何もしません。
>>> a = {}
>>> a.setdefault('k', 123)
123
>>> a
{'k': 123}
>>> a.setdefault('k', 456)
123
>>> a
{'k': 123}
「Python ライブラリリファレンス 3.8 マップ型」を参考にしました。