Python言語辞書は、マッピング、マッピングオブジェクトのLi Haxi値(キー、キー)及び尖ったオブジェクトの種類のみ(値、値)は、多くの関係の一つです。辞書オブジェクトが可変である、コンテナ型であり、また、容器の他のタイプを含むことができるPythonの格納されたオブジェクト、任意の数とすることができます。
辞書と辞書の割り当てを作成します。1.
ただ、関係なく、辞書は要素が含まれているかどうかの、変数に辞書フィールドの割り当てを作成する必要があります。
>>> dict1 = {}
>>> dict2 = { '名前': '土'、 'ポート':80}
または辞書を作成するためにファクトリメソッドのdict()を使用します。
>>> fdict = dictの(([ 'X'、1]、[ 'Y'、2]))
>>> fdict
{ 'と' 2 'X':1}
構築されたfromkeysを使用して他の方法は、()「デフォルト」の辞書を作成するには、辞書の要素は、(与えられていない場合、デフォルトはNoneです)同じ値を持ちます
>>> ddict = {} .fromkeys(( 'X'、 'Y')、-1)
>>> ddict
{ 'と' -1 'X':-1}
>>>布告= {} .fromkeys(( 'foo' で、 'バー'))
>>>勅令
{ 'FOO':なし、 'バー':なし}
辞書へのアクセスの2値
(通常はキー付き)の辞書を横断、私たちはそのキーを順番に必要
>>> dict2 = { '名前': 'foo' で、 'ポート':80}
>>> dict2.keysでのキーのための():
...プリント 'キー:%sの値:%s' は%(キー、dict2 [キー])
...
キー:名前値:FOO
キー:ポート値:80
また、可能な反復処理し、このような辞書やファイルとしてクラスシーケンスオブジェクト(シーケンスのようなオブジェクト)、ちょうどあなたがループのための辞書を横断できる辞書の名前を使用します。
>>> dict2 = { '名前': 'foo' で、 'ポート':80}
>>> dict2でのキーの:
...プリント 'キー:%sの値:%s' は%(キー、dict2 [キー])
...
キー:名前値:FOO
キー:ポート値:80
辞書の要素の値が、辞書のキープラスブラケットが取得を取得する必要があります。
>>> dict2 = { '名前': 'foo' で、 'ポート':80}
>>> dict2 [ '名前']
'foo' で
3.アップデート辞書
以下の方法があります。新しいアイテムや新しいデータ要素(すなわち、キー - 値のペア)を追加し、既存を変更するデータ項目、すでに存在するデータ項目を削除します。
>>> dict2 = { '名前': 'foo' で、 'ポート':80}
>>> dict2 [ '名前'] = 'ジョーンズ'
>>> dict2 [ 'アーチ'] = 6969
>>> dict2
{ 'アーチ':6969、 '名称': 'ジョーンズ'、 'ポート':80}
>>>デルdict2 [ '名前']
>>> dict2
{ 'アーチ':6969、 'ポート':80}
>>> dict2.clear()
>>> dict2
{}
>>>デルdict2
>>> dict2
トレースバック(最新の呼び出しの最後):
<モジュール>内のファイル "<STDIN>"、1行目、
NameError:名「dict2は」が定義されていません
>>> dict2 = { '名前': 'foo' で、 'ポート':80}
>>>「名前」のエントリにdict2.pop(「名前」)#削除とリターンキー
'foo' で
>>> dict2
{ 'ポート':80}
4.辞書のキー
キーに対応する許容値の複数:複数の値に対応するキーが許可されていない(そのようなコンテナのリストとして、辞書や他のタプルが可能です)。キー(すなわち、繰り返しキー割当辞書)競合している場合、最終的な割当を取ります。
ハッシュキーがなければならない:すべてのタイプは、不変ハッシュ可能であり、同一符号同じキー値(例えば、1.0および1)。
マッピング演算子のタイプ
5.1。演算子の標準タイプ
=、<、>、および
5.2。辞書検索キーオペレータ([])
キー辞書検索演算子のみを演算子のタイプのために、キーを持つクエリは、キーはパラメータであり、
辞書「V」の要素に割り当てられたD [K] = Vキーで「K」、
Dキー「K」によって[k]は、要素クエリ辞書の値。
5.3。(キー)メンバーシップの操作(ではない、で)
同様のhas_key()メソッド
dict2で>>>「名前」
真
6組み込み関数およびマッピング・タイプ・ファクトリ機能
6.1標準関数型(タイプ()、STR()およびCMP())
タイプ():辞書コールタイプ()ファクトリメソッドリターンが辞書その「<タイプ 『辞書』>」
STR():辞書の文字列表現を返します。
CMP():まず、辞書の大きさ、そしてキー、そして最終的に値を比較します。
6.2。マッピングタイプの相関関数
辞書():パラメータが空の辞書を生成し、利用できない場合、辞書を作成するために使用される。パラメーターは、反復(配列、またはイテレータオブジェクトまたは支持反復)であり、各要素は、反復しなければならないことあれば表示されています。各ペアの値は、最初の要素は2番目の要素は辞書の値であり、辞書のキーです。
>>> dictの()
{}
>>>辞書([ 'X'、1]、[ 'Y'、2]])
{ 'と' 2 'X':1}
>>>のdict([(XY '' [I-1]に対するI)Iの範囲内の(1,3)])
{ 'と' 2 'X':1}
lenは():使用辞書lenは()のすべての要素を返します - 数(キーと値のペア)
>>> dict2 = { '':1、 'B':2}
>>> LEN(dict2)
2
ハッシュは、():オブジェクトは、オブジェクトがHAH()にパラメータとして渡され、辞書のキーとして使用されるオブジェクトのハッシュ値を返すことができるかどうかを決定する、オブジェクトはハッシュだけで、それが辞書のキーとして使用することができます。
>>>ハッシュ([])
トレースバック(最新の呼び出しの最後):
<モジュール>内のファイル "<STDIN>"、1行目、
TypeError例外:非ハッシュの種類:「リスト」
>>>ハッシュ(())
3527539
6.3マッピングのタイプは、組み込みの方法
キー():辞書のキーのすべてを含むリストを返します。
値は():辞書内のすべての値を含むリストを返します。
アイテム():すべて返します - リスト(キー値)タプルを。
)(ソート:
{ '':1、 'C':2、 'B':3}
>>>ソート(dict1)でEKのために:
...プリント 'キー:'、EK、 'の値:'、dict1 [EK]
...
キー:値:1
キー:b値:3
キー:C値:2
アップデート():任意原結合は、新しいキーを追加することを繰り返した場合、元のエントリに対応する重複キーがカバレッジに対応する新しいキー値となり、別の辞書に辞書を辞書の内容を追加します。
>>> dict1
{ '':1、 'C':2、 'B':3}
>>> dict2 = { 'B':3、 'D':5}
>>> dict1.update(dict2)
>>> dict1
{ '':1、 'C':2、 'B':3、 'D':5}
>>>
()コピー:辞書、浅いコピーのコピーを返します。
SetDefault():キーが辞書に存在する場合、辞書はキーが含まれているかどうかチェックし、それはキーが辞書に存在しない場合、このキーはデフォルト値に割り当てることができ、この値が返され、値を取ることができます。
>>> mdict = { 'ホスト': '鄭'、 'ポート':80}
>>> mdict.setdefault( 'protの'、 'TCP')
'TCP'
>>> mdict.setdefault( 'ポート'、 '8080')
80
>>> mdict.items()
【( 'ホスト'、 '鄭')、( 'PROT'、 'TCP')、( 'ポート'、80)]
>>>
付録:ビルトインメソッドのマッピングタイプ
メソッド名 |
オペレーティング |
dict.clear() |
辞書内のすべての要素を削除します。 |
dict.copy() |
リターン辞書(浅いコピー)のコピー |
dict.fromkeys(配列、ヴァル=なし) |
この値が提供されていない場合は作成し、重要な要素として、辞書に配列に新しい辞書を返す、辞書の初期値に対応するすべてのキーとしてvalが、デフォルトはNoneです |
dict.get(キー、デフォルト=なし) |
辞書のキーでdictのキーは、キーが辞書に存在しない場合、デフォルト値が返され、その値に対応する値を返します(デフォルトパラメータのデフォルトなし) |
dict.has_key(キー) |
キーが辞書に存在する場合、それはない事業者で、中と同等、それ以外の場合はFalseを返し、Trueを返します |
dict.items() |
辞書あって、キー、値のタプルのリストを返します。 |
dict.keys() |
これは、辞書のキーを含むリストを返します。 |
DICT.ITER() |
それらは、非反復対応するような方法iteritems()、iterkeys()、itervalues()メソッド、むしろリストよりも、それらはサブ反復を返すことを除い |
dict.pop(キー[デフォルト]) |
辞書のキーキーが存在し、削除辞書を返す場合とキーが存在しない、とデフォルト値が指定されていない場合は、[キー]、キー、例外がスローされKeyError例外に類似()メソッドを取得します |
dict.setdefault(キー、デフォルト=なし) |
方法およびセット()が類似しているが、キーのキーはそれを辞書[キー] =デフォルトの割り当てによって、辞書に存在しない場合 |
dict.update(dict2) |
辞書辞書に追加され、キーと値のペアの辞書dict2 |
dict.values() |
これは、辞書に含まれるすべての値のリストを返します。 |