Python > 言語 > データ型 > 辞書型


Python - 言語 - データ型 - 辞書型

*

*


辞書(dict)

概要

[ edit ]

  • 型としては,本当は,写像型(Mapping型)と呼ばれる

[edit]

辞書の生成

  • { key:value, ..., ... }
    • キーと値のペアの集合

dict_01 = {"a": 1, "b": 2, "c": 3}

辞書操作

[edit]

要素へのアクセス

print( dict_01["a"] )
print( dict_01["b"] )
print( dict_01["c"] )

辞書の演算

  • 項目数

    len(d)

    辞書 d の項目数を返す.

    Keyによるアクセス

    d[key]

    辞書 d のキー key の項目を返す.key が存在しなければ,KeyError を送出する

    Keyによる値のセット

    d[key] = value

    d[key] に value を設定する.

    Keyによる値の削除

    del d[key]

    辞書 d から d[key] を削除する.key が存在しなければ,KeyError を送出する

    包含関係判定

    key in d

    辞書 d がキー key を持っていれば True を、そうでなければFalse を返す.

    非包含関係判定

    key not in d

    not key in d と等価.

    反復子

    iter(d)

    辞書のキーに渡るイテレータを返す.iter(d.keys()) のショートカット

    全項目を削除

    clear()

    辞書の全ての項目を消去する.

    get(key[, default])

    key が辞書にあれば key に対する値を、そうでなければ default を返す.

    default が与えられなかった場合、デフォルトでは None となる.KeyError を送出することはない

    pop(key[, default])

    key が辞書に存在すればその値を辞書から消去して返し、さもなくば default を返す.

    default が与えらず、かつ key が辞書に存在しなければ KeyError を送出する

    setdefault(key[, default])

    もし、 key が辞書に存在すれば、その値を返す.さもなくば値を default として key を挿入し、

    default を返す。 default のデフォルトは None.

    popitem()

    任意の (key, value) 対を辞書から消去して返す.

    辞書が空であれば、 popitem() の呼び出しは KeyError を送出する

    update([other])

    辞書の内容を other のキーと値で更新する.既存のキーは上書きされる.返り値は None.

    update() は、他の辞書オブジェクトでもキー/値の対のイテラブル (タプル、もしくは、

    長さが2のイテラブル) でも、どちらでも受け付ける.

    キーワード引数が指定されれば、そのキー/値の対で辞書を更新する: d.update(red=1, blue=2)。

    浅いコピー

    copy()

    辞書の浅いコピーを返す.

    classmethod fromkeys(seq[, value])

    seq からキーを取り、値を value に設定した、新しい辞書を作成する.

    fromkeys() は新しい辞書を返すクラスメソッド. value のデフォルト値は None.

辞書ビューによる各要素への反復アクセス

  • 全ての要素をfor文で反復的に参照するための辞書ビューを返す
    • items(), keys(), valus(), iteritems()
    • 参照される要素の順序は順不同

    items()

    辞書の項目 ((key, value) 対) の新しいビューを返す.

    keys()

    辞書のキーの新しいビューを返す.

    values()

    辞書の値の新しいビューを返す.

   1 dict_01 = {"a": 1, "b": 2, "c": 3}

items()

   1 for k, v in dict01.items():
   2     print( k, v )

c 3
b 2
a 1

keys()

   1 for k in dict01.keys():
   2     print( k, dict01[k] ) 

c 3
b 2
a 1

values()

   1 for v in dict01.values():
   2     print( v )

3
2
1

iteritems() ... Python3にはない

   1 for k, v in dict01.iteritems():
   2     print( k, v )

省略
*

リファレンス

*



Software Engineering(IIJIMA, Tadashi -- Keio Univ.)



*

SoftEng: Python/Lang/DataType/Dict (last edited 2018-09-28 12:54:57 by TadashiIijima)