dict は、結合マッピングまたは辞書を表す組み込み型です。辞書では、d[k]
を使用したインデックス登録と、k in d
を使用したキーメンバーシップ テストがサポートされています。どちらのオペレーションも一定の時間がかかります。フリーズされていない辞書は変更可能で、d[k]
に割り当てたり、特定のメソッドを呼び出したりすることで更新できます。ディクショナリは反復処理が可能です。イテレーションによって、広告掲載オーダー内の一連のキーが生成されます。反復処理の順序は、既存のキーに関連付けられている値を更新しても影響を受けませんが、キーを削除してから再挿入すると影響を受けます。
d = {0: "x", 2: "z", 1: "y"} [k for k in d] # [0, 2, 1] d.pop(2) d[0], d[2] = "a", "b" 0 in d, "a" in d # (True, False) [(k, v) for k, v in d.items()] # [(0, "a"), (1, "y"), (2, "b")]
辞書を作成するには、次の 4 つの方法があります。
- 辞書式
{k: v, ...}
は、指定されたキー / 値エントリを含む新しい辞書を返します。このエントリは、式に現れる順序で挿入されます。いずれかのキー式が同じ値を生成する場合、評価は失敗します。 - 辞書の理解度
{k: v for vars in seq}
は新しい辞書を生成し、各 Key-Value ペアがループの反復順序で挿入されます。重複は許容されます。特定のキーを最初に挿入することでシーケンス内の位置が決まり、最後の挿入で関連する値が決定されます。{k: v for k, v in (("a", 0), ("b", 1), ("a", 2))} # {"a": 2, "b": 1} {i: 2*i for i in range(3)} # {0: 0, 1: 2, 2: 4}
- 組み込みの dict 関数を呼び出すと、指定したエントリを含む辞書が返されます。この辞書は、name の前に位置引数を引数の順序で挿入します。理解と同様に、重複するキーも使用できます。
- 結合式
x | y
は、2 つの既存の辞書を組み合わせて新しい辞書を生成します。2 つの辞書にキーk
が共通する場合、右側の辞書のキーの値(つまりy[k]
)が優先されます。ユニオン演算子の|=
バリアントは、辞書をインプレースで変更します。例:d = {"foo": "FOO", "bar": "BAR"} | {"foo": "FOO2", "baz": "BAZ"} # d == {"foo": "FOO2", "bar": "BAR", "baz": "BAZ"} d = {"a": 1, "b": 2} d |= {"b": 3, "c": 4} # d == {"a": 1, "b": 3, "c": 4}
メンバー
クリア
None
dict.clear()
辞書からすべてのアイテムを削除します。
get
unknown dict.get(key, default=None)
key
が辞書に含まれている場合は key
の値を返し、それ以外の場合は default
を返します。default
が指定されていない場合は、デフォルトで None
に設定されるため、このメソッドがエラーをスローすることはありません。
パラメータ
パラメータ | 説明 |
---|---|
key
|
必須 探すべきキー。 |
default
|
デフォルトは None キーが見つからない場合に使用するデフォルト値(None の代わりに)。 |
アイテム
list dict.items()Key-Value タプルのリストを返します。
{2: "a", 4: "b", 1: "c"}.items() == [(2, "a"), (4, "b"), (1, "c")]
鍵
list dict.keys()キーのリストを返します。
{2: "a", 4: "b", 1: "c"}.keys() == [2, 4, 1]
ポップ
unknown dict.pop(key, default=unbound)辞書から
key
を削除し、関連する値を返します。そのキーを持つエントリが見つからなかった場合は、何も削除せず、指定された default
値を返します。デフォルト値が指定されていない場合は、代わりに失敗します。
パラメータ
パラメータ | 説明 |
---|---|
key
|
必須 鍵。 |
default
|
デフォルトは unbound キーが存在しない場合はデフォルト値が返されます。 |
popitem
tuple dict.popitem()辞書から最初の
(key, value)
ペアを削除して返します。popitem
は、セット アルゴリズムでよく使用されるように、辞書を破壊的に反復処理する場合に便利です。辞書が空の場合、popitem
の呼び出しは失敗します。
setdefault
unknown dict.setdefault(key, default=None)
key
が辞書に含まれている場合は、その値を返します。存在しない場合は、値が default
のキーを挿入して default
を返します。default
のデフォルトは None
です。
パラメータ
パラメータ | 説明 |
---|---|
key
|
必須 鍵。 |
default
|
デフォルトは None です。キーが存在しない場合のデフォルト値です。 |
update
None
dict.update(pairs=[], **kwargs)
辞書を、まずオプションの位置引数 pairs
で更新し、次にオプションのキーワード引数で更新します。位置引数がある場合は、辞書、イテレブル、None のいずれかである必要があります。辞書の場合、Key-Value ペアがこの辞書に挿入されます。イテラブルの場合は、ペア(または長さ 2 の他のイテラブル)のシーケンスを提供する必要があります。各ペアは挿入対象の Key-Value ペアとして扱われます。
各キーワード引数 name=value
によって、名前と値のペアがこの辞書に挿入されます。
パラメータ
パラメータ | 説明 |
---|---|
pairs
|
デフォルトは [] です。辞書またはエントリのリストです。エントリは、キーと値の 2 つの要素を持つタプルまたはリストでなければなりません。 |
kwargs
|
必須 追加エントリのディクショナリ。 |
values
list dict.values()値のリストを返します。
{2: "a", 4: "b", 1: "c"}.values() == ["a", "b", "c"]