要素の追加と連結(updateメソッド)

広告

辞書オブジェクトに要素を追加するには、現在存在しないキーを指定して値を代入します。

辞書オブジェクト[キー] = オブジェクト

既に存在しているキーを指定して要素を取得しオブジェクトを代入すると、そのキーに対する値が変更されることになりますが、存在していないキーを指定してオブジェクトを代入すると、キーとオブジェクトをペアとする新しい要素が追加されます。

具体的には次のように記述します。

dict = {"yamada":75, "endou":82}

dict["itou"] = 89

上記の場合はキーが「itou」で値が「89」の新しい要素が追加されます。

辞書オブジェクトの連結

辞書オブジェクトに他の辞書オブジェクトの要素を連結させることも可能です。辞書型で用意されている「update」メソッドを使います。

辞書オブジェクト.update(連結する辞書オブジェクト)

「update」メソッドの引数に指定した辞書オブジェクトに含まれる要素を対象の辞書オブジェクトに連結します。

具体的には次のように記述します。

dict = {"yamada":75, "endou":82}

dict.update({"honda":52, "tanaka":78})
print dict   # {"yamada":75, "endou":82, "honda":52, "tanaka":78}

※連結後に要素がどのように出力されるのかは決まっていません。

なお「update」メソッドの引数に指定した辞書オブジェクトと対象の辞書オブジェクト、同じキーを持つ要素があった場合には、その要素は追加ではなく上書きとなりますので注意して下さい。

dict = {"yamada":75, "endou":82}

dict.update({"honda":52, "endou":92})
print dict   # {"yamada":75, "endou":92, "honda":52}
サンプルコード

では実際に試してみます。

#coding: UTF-8

dict = {"yamada":75, "endou":82}
print dict

print 'dict["itou"] = 89'
dict["itou"] = 89
print dict
print u"要素数=" + str(len(dict))

dict.update({"honda":52, "endou":92})
print dict

上記を「test5-1.py」として保存します。保存する時の文字コードはUTF-8です。そして次のように実行して下さい。

要素の追加

( Written by Tatsuo Ikura )