Python3 – 辞書

リテラル

辞書(dictionary)の要素はキーと値のセットで保持される。辞書の要素はリストのような順序を持たない。

キーについて

キーに使える型は、数値、文字列、タプルなど内容を変更できない型。

重複したキーを含んだ要素を定義しようとすると、[最後に指定したキー]:[値]のペアになる。

リストなどの変更可能な型やそれらを含むタプルをキーに使うとTypeErrorとなる。

要素数

辞書が持っている要素の数はlen()関数で得られる。

要素の操作

要素の参照、追加

値の参照と変更はキーを指定して行う。

  • 存在しないキーを指定して参照するとTypeError
  • 存在しないキーを指定して値を定義すると、新たな要素が追加される。

要素の削除

del文

del文はキーを指定して要素を削除する。

pop()メソッド

pop()メソッドは削除した要素オブジェクトを返す。第2引数を指定した場合、キーが存在しないときに第2引数を返す。

clear()メソッド

clear()メソッドは辞書をすべてクリアする。

キーの存在確認

辞書が指定したキーを持つかどうかをチェックするには、in演算子を使う。Python3ではhas_key()メソッドはなくなった。

辞書オブジェクトの操作

辞書同士の連結

update()メソッドで他の辞書を連結できる。この操作は、元の辞書の内容を更新する。

ただし元の辞書と追加する辞書で重複するキーがあった場合は、追加する方の辞書の要素で上書きされる。

辞書要素のリスト化

キーリストの取得

keys()メソッドは、全ての要素キーをリストとして返す。

値リストの取得

values()メソッドは、全ての要素の値をリストとして返す。

要素タプルリストの取得

items()メソッドは、全ての要素を([キー], [値])のタプルとしたリストを返す。

 

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です