Dictionary

  • 辞書の概要
    • {キー1:値1, キー2:値2, ・・・}という形式で記述
    • キーにはリストと辞書以外のほとんどのオブジェクトを指定でき、関数なども可能
    • 値は型を選ばない

  • 辞書の作成
    • 直接命令して作る
{キー: 値, ・・・}
    • dict関数を使う
dict(キー=値, ・・・)
dict([(キー, 値), ・・・])
dict({キー: 値, ・・・}
    • コピーして作る
      • dict関数でもコピーできるが、copyメソッドを使う方がC実装による実行部分が増え、高速にできる
辞書.copy()
    • キーのリストから作る
      • シーケンス(リスト、タプル、文字列)の要素をキーに持つ辞書を作る
      • キーに対する値として、デフォルト値を指定できるが、何も指定しない場合はNoneが入る
dict.fromkeys(シーケンス, デフォルト値)

  • 辞書の読み込み
    • キーを指定する
      • "[]"の中にキーを指定すると、対応する値を返す
      • 指定したキーがない場合は、KeyError例外が発生する
辞書[キー] = 値
    • メソッドでキーを指定する
      • 指定したキーに対応する値を返す
      • キーがない場合は、指定したデフォルト値を返す
      • キーがなく、デフォルト値を省略した場合は、Noneが返る
辞書.get(キー, デフォルト値)
    • キー・値・キーと値のリストを取得する
      • ループ処理などによく利用する
      • keysはキーの一覧をリストにして返す
      • valuesは値の一覧をリストにして返す
      • itemsはキーと値のペアをタプルにした一覧をリストにして返す
辞書.keys()
辞書.values()
辞書.items()
    • キーの存在を確認する
      • 指定したキーが辞書に含まれていればTrue、含まれていなければFalseを返す
キー in 辞書
    • 辞書の長さを知る
      • 辞書の構成要素数を返す
len(辞書)

  • 辞書の更新
    • キーを指定して変更する
      • 指定したキーに対応する値を、任意の値に変更する
      • 指定したキーが存在しない場合は、その値で新たに辞書の要素を作成する
辞書[キー] = 値
    • メソッドでキーを指定する
      • 指定したキーに対応する値を返す
      • 指定したキーが存在しない場合は、そのキーの項目を新たに作成し、デフォルト値を設定してこの値を返す
      • デフォルト値を省略した場合は、デフォルト値としてNoneが設定される
辞書.setdefault(キー, デフォルト値)
    • 2つの辞書を結合する
      • 指定された辞書または引数の内容を、辞書に取り込む
      • 既に存在するキーは新しい値に更新され、存在しないキーは新たに作成される
辞書.update(辞書)
辞書.update(キー=値, ・・・)
辞書.update([(キー, 値), ・・・])
辞書.update({キー: 値, ・・・})

  • 辞書の削除
    • キーを指定して削除する
      • 指定したキーと、それに対応する値を削除する
del 辞書[キー]
    • キーで値を取り出して削除する
      • 指定したキーに対応する値を取り出し、キーと値を削除する
      • 存在しないキーを指定した場合にはKeyError例外が発生する
      • デフォルト値を設定すると、KeyError例外が出ず、デフォルト値が返る(辞書は更新されない)
辞書.pop(キー, デフォルト値)
    • キーと値のペアを取り出しつつ削除する
      • キーと、それに対応する値を取り出し、削除する
      • 辞書には順番がないので、取り出される順番はわからない
      • 空の辞書に対して行うと、KeyError例外が発生する
辞書.popitem()

  • その他の辞書の操作
    • 辞書のコピー
      • 浅いコピー
辞書.copy()
dict(辞書)
      • 深いコピー
copy.deepcopy(辞書)
    • 辞書の比較
      • 等価比較(全て(キーと値)の同一性を比較)
辞書 == 辞書
辞書 != 辞書
      • 大小比較
        • キーの数を比較する
        • キーの数が同じ場合は、キーを比較する
        • キーが全く同じ場合は、値を比較する
辞書 >= 辞書
辞書 > 辞書
辞書 <= 辞書
辞書 < 辞書
      • is比較(オブジェクトそのものの同一性を比較)
辞書 is 辞書

Comments