Pythonの辞書(辞書)
別の変数は、辞書コンテナモデルであり、オブジェクトの任意の型を格納することができます。
次のようにコロンの各辞書のキー(キー=>値)(:)、コンマ(、中括弧内の全体の辞書を含む)部門、({})で各ペアの間で分割は、形式は次のとおりです。
d = {key1 : value1, key2 : value2 }
キーは一意である必要がありますが、値は必要ありません。
値は、任意のデータ型を取ることができますが、キーは、文字列、数値、またはタプルとして、不変でなければなりません。
シンプルな辞書例:
dict = {'Alice': '2341', 'Beth': '9102', 'Cecil': '3258'}
だから、また、辞書を作成します。
dict1 = { 'abc': 456 }; dict2 = { 'abc': 123, 98.6: 37 };
辞書値にアクセス
例次のおなじみの角括弧内の対応するキー:
#!/usr/bin/python dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'}; print "dict['Name']: ", dict['Name']; print "dict['Age']: ", dict['Age'];
上記の出力の例:
dict['Name']: Zara dict['Age']: 7
データ・ディクショナリにアクセスするためにキーが存在しない場合、それが出力されます、次のエラー:
#!/usr/bin/python dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'}; print "dict['Alice']: ", dict['Alice'];
上記の出力の例:
dict['Alice']: Traceback (most recent call last): File "test.py", line 5, in <module> print "dict['Alice']: ", dict['Alice']; KeyError: 'Alice'
辞書の変更
、新しいキー/値のペアを追加、変更または例次のキー/値のペアを既存削除する辞書に新しいコンテンツを追加する方法:
#!/usr/bin/python dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'}; dict['Age'] = 8; # update existing entry dict['School'] = "DPS School"; # Add new entry print "dict['Age']: ", dict['Age']; print "dict['School']: ", dict['School'];上記の出力の例:
dict['Age']: 8 dict['School']: DPS School
辞書の要素を削除します。
単一の要素が空の辞書、空に一つだけの操作することができます削除することができます。
デルコマンド、以下の例で辞書を削除するには:
#!/usr/bin/python # -*- coding: UTF-8 -*- dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'}; del dict['Name']; # 删除键是'Name'的条目 dict.clear(); # 清空词典所有条目 del dict ; # 删除词典 print "dict['Age']: ", dict['Age']; print "dict['School']: ", dict['School'];
デルの辞書の後もう存在しないので、しかし、これは、例外が発生しません。
dict['Age']: Traceback (most recent call last): File "test.py", line 8, in <module> print "dict['Age']: ", dict['Age']; TypeError: 'type' object is unsubscriptable
注:次のデル()メソッドが議論されます。
辞書のキーの特徴
辞書の値は制限なしに撮影することができ、任意のPythonオブジェクトは、標準オブジェクトをすることができ、それは、ユーザ定義することができますが、キーは機能しません。
覚えておくべき二つの重要なポイント:
1)同じキーを2回表示されることはできません。 あなたは同じキーを二回、後者の値が記憶される場合に割り当てられている作成すると、以下の例:
#!/usr/bin/python dict = {'Name': 'Zara', 'Age': 7, 'Name': 'Manni'}; print "dict['Name']: ", dict['Name'];
上記の出力の例:
dict['Name']: Manni
2)あなたは、として機能するように、数値、文字列、またはタプルを使用できるようにキーは、変更してはならない、リストには、以下の例とそうではないでしょう。
#!/usr/bin/python dict = {['Name']: 'Zara', 'Age': 7}; print "dict['Name']: ", dict['Name'];
上記の出力の例:
Traceback (most recent call last): File "test.py", line 3, in <module> dict = {['Name']: 'Zara', 'Age': 7}; TypeError: list objects are unhashable
辞書組み込み関数&方法
Pythonの辞書には、以下の組み込み関数が含まれています。
いいえ。 | 機能と説明 |
---|---|
1 | CMP(dict1、dict2) 辞書内の2つの要素を比較します。 |
2 | LEN(辞書) 辞書要素、キーすなわち合計数の数をカウントします。 |
3 | STR(辞書) 辞書の印刷可能な文字列の出力表現。 |
4 | タイプ(変数) 変数は辞書を返す場合には、入力変数の型を返します。 |
Pythonの辞書には、以下の組み込みメソッドが含まれています。
いいえ。 | 機能と説明 |
---|---|
1 | radiansdict.clear() 辞書内のすべての要素を削除します。 |
2 | radiansdict.copy() 辞書の浅いコピーを返します。 |
3 | radiansdict.fromkeys() 列seq要素に新しい辞書を作成して初期値に対応するすべてのキーの辞書として辞書のキー、valの操作を行います |
4 | radiansdict.get(キー、デフォルト=なし) 戻り値は辞書のデフォルト値ではない場合、指定されたキーの値を返します |
5 | radiansdict.has_key(キー) キーが辞書辞書にある場合、それ以外の場合はfalseを返し、trueを返します |
6 | radiansdict.items() リストトラバーサルを返します(キー、値)タプル配列 |
7 | radiansdict.keys() すべてのキーの辞書のリストを返すには |
8 | radiansdict.setdefault(キー、デフォルト=なし) そして取得()も同様ですが、キーは、辞書に存在しないと、デフォルトのキーに値を追加する場合 |
9 | radiansdict.update(dict2) Dict2辞書の更新中のキー/値のペアの辞書 |
10 | radiansdict.values() 辞書内のすべての値のリストを返すには |