>>> items = [('name','ガンビー') ,('年齢'.42)]
>>> d = dict(items)
>>> d
{'年齢':42,'名前' :'ガンビー '}
>>> d = dict(name='ガンビー','年齢'=42)
>>> d
{'年齢':42, 'name' :'Gumby'}
1.2 基本的な辞書操作
(1)len(d) は d 内の項目 (キーと値のペア) の数を返します;
(2 )d[k] k に関連付けられた値を返します。
(3) d[k]=v は値 v をキー k に関連付けます。(4) del d[k] はキー k を持つ項目を削除します。 ;
(5) k in d は、d にキー k を持つ項目があるかどうかを確認します
1.3 辞書形式文字列
各変換指定子の後には、次のことができます。キー (括弧内) を追加し、その後に他の説明要素を追加します。
指定されたすべてのキーが辞書内で見つかる限り、変換指定子はいくつでも取得できます。
コードをコピーします コードは次のとおりです:>>> ケーキの値段は $ です。 %(cake )s、ケーキのミルクの価格は $%(milk)s です。$%(cake)s はOKです'
>>> 価格 = {'cake':4,'milk' :5}
>>>print Temple % 価格
「ケーキの値段は 4 ドル、ケーキのミルクの値段は 5 ドルで大丈夫です」
1.4 Dictionary メソッド
1.4.1 clear
clear メソッドは、ディクショナリ内のすべての項目をクリアします。これはインプレース操作であり、戻り値はありません (または何も返しません)。
次の 2 つの状況を考えてみましょう:
a. 新しい空の辞書に関連付けて x をクリアします。これは、y にはまだ元の辞書に関連付けられています。
コードをコピー
コードは次のとおりです:>>> x = {}
>>> 🎜>>>> x['key'] = 'value'
>>> y
{'key':'value'}
>>> 🎜>>>> y
{'key':'value'}
b. 元の辞書内のすべての要素をクリアする場合は、clear メソッドを使用する必要があります。 。
コードをコピー
コードは次のとおりです。
>>> x = {}> >> ; y = x>>> x['キー'] = '値'
>>> y
{'キー':'値'}
> >> 新しい辞書 (値自体はコピーではなく同じであるため、このメソッドは浅いコピーを実装します)
コピー内の値を置き換える場合、元の辞書は影響を受けません。値が変更されると、元の辞書が変更されます。 ]
コードをコピー
コードは次のとおりです:
>>> x = {'a':1 ,'b ':[2,3,4]}
>>> y = x.copy()
>>> y['a'] = 5
> ;> y['b'].remove(3)
>>> {'a':5,'b':[2,4]} ;> > 値。 コードをコピー
コードは次のとおりです。
>>> x = {'a':1, 'b' :[2,3,4]}
>>> y = x.copy()
>>> z = x.deepcopy()
>> ;> x['a'].append(5)
>>> {'a':1,5,'b':[2,3.4]}> ;> > z
{'a':1,'b':[2,3,4]}
1.4.3 fromkeysfromkeys メソッドは指定されたキーを使用します新しい辞書を作成するには、各キーに対応するデフォルト値は None です。このメソッドは、すべての辞書の型 dict に対して直接呼び出すことができます。デフォルト値を使用したくない場合は、独自の値を指定することもできます。 コードをコピー
コードは次のとおりです:
>>> {}.fromkeys(['名前','年齢'])
{'年齢':なし,'名前':なし}
>> >
>>> dict.fromkeys(['名前','年齢'],'不明')
{'年齢':'不明','名前':'不明'}
1.4.4 get
get メソッドは、辞書項目にアクセスするためのよりリラックスした方法です。 get を使用して存在しないキーにアクセスすると、None 値が返されます。 「デフォルト」値をカスタマイズして、None を置き換えることもできます。
コードをコピー コードは次のとおりです。
>>> d = {}
> >> ; print d.get('name')
なし
>>> d.get("name",'N/A')
'N/A'
> >> d[''名前] = 'エリック'
>>>d.get('名前')
1.4 .5 has_key
has_key メソッドは、辞書に指定されたキーが含まれているかどうかを確認できます。 d.has_key(k)
コードをコピー コードは次のとおりです。>>> }
>>> d.has_key('name')
False
1.4.6 items および iteritems
items メソッドは、すべての辞書項目をリストとして返します。ただし、リスト内の各項目 (キー、値) は、特定の順序で返されません。 iteritems メソッドはほぼ同じことを行いますが、リストの代わりに反復子オブジェクトを返します:
コードをコピー コードは次のとおりです: >>> d = {'a':1,'b':2,'c':3}
>>>d.items
[('a ',1) ,('b',2),('c',3)]
>>> it = d.iteritems()
>>>
>>> list(it)
[('a',1),('b',2),('c',3)]
1.4.7 key と iterkeys Keys メソッドは辞書内のキーをリストとして返しますが、iterkeys はキーの反復子を返します。
1.4.8 Pop メソッド
pop メソッドは、指定されたキーに対応する値を取得し、辞書からキーと値のペアを削除するために使用されます。
コードをコピー
コードは次のとおりです。>>> d = {'a':1, 'b' :2,'c':3}>>> d.pop('a')
>>>d
{'b':2,' c': 3}
1.4.10 setdefault
setdefault メソッドは、get メソッドとある程度似ています。つまり、指定されたキーに関連付けられた値を取得でき、次のことができます。辞書内の指定されたキーに関連付けられた値も取得します。固定キーの場合は、対応するキーの値を設定します。
コードをコピー
コードは次のとおりです。>>> d = {}> >> ; d.setdefault('name','N/A')
'N/A'
>>> d
{'name': 'N/A'}
>>> d.setdefault('name',A)
'N/A'
上記の例のように、キーが存在する場合、デフォルト値(オプション) が返され、対応するディクショナリが更新され、キーが存在する場合は対応する値が返されますが、ディクショナリは変更されません。
1.4.11 update
update メソッドは、1 つの辞書項目を使用して別の辞書を更新できます。提供された辞書エントリは古い辞書に追加されるか、同じキーを持つ場合は上書きされます。
コードをコピー
コードは次のとおりです。>>> d = {'a':1, 'b' :2,'c':3}>>> x = {'a':5,'d':6}
>>> )
>>> d
{'a': 5, 'c': 3, 'b': 2, 'd': 6}
1.4。 12 個の値と itervalues
values メソッドは、ディクショナリ内の値をリストの形式で返します (itervalues は、キーのリストを返すのとは異なり、値のリストを返します)。繰り返しの要素を含めることができます。
コードをコピー
コードは次のとおりです。>>> d = {}> >> d[1]=1
>d[2]=2
>>d[3]=3
>>d [4] =1
>>d
{1: 1, 2: 2, 3: 3, 4: 1}
>>>d.values()
[1、2、3、1]