関数dict.setdefaultの使い方の例

関数の機能:
  keyを指定してdafault値がvalueの要素を辞書に追加する。
  但し、指定したkeyが辞書に存在すれば要素は追加されない。

辞書に存在するkeyを指定した場合

>>> D = {1:'A', 2:'B', 3:'C'}
>>> D.setdefault(1)
'A'
>>> D
{1: 'A', 2: 'B', 3: 'C'}
この例では、辞書に存在するkeyを指定(ここでは1を指定)して関数を呼び出しています。この場合、関数からの返却値は指定したkeyに対応するvalue(ここでは'A')となります。また、辞書に変化は生じません。

辞書に存在しないkeyを指定した場合

>>> D = {1:'A', 2:'B', 3:'C'}
>>> D.setdefault(4)
>>> D
{1: 'A', 2: 'B', 3: 'C', 4: None}
この例では、辞書に存在しないkeyを指定(ここでは4)して関数を呼び出しています。この場合、指定したkeyの要素が追加され、valueはdefault値(指定しなければNone)となります。
default値を指定する場合は下記の様に、2番目の引数に指定します。
>>> D.setdefault(5, 'X')
'X'
>>> D
{1: 'A', 2: 'B', 3: 'C', 4: None, 5: 'X'}