1. 辞書の作成
方法①:
>>> dict2 = {'name': 'earth', 'port': 80}
>> ; dict1, dict2
({}, {'port': 80, 'name': 'earth'})
方法②: Python 2.2 バージョン以降
>>> fdict = dict((' x' , 1], ['y', 2]))
>>> fdict
{'y': 2, 'x': 1}
方法③:
Python 2.3 バージョン以降では、要素が同じ値を持つ「デフォルト」辞書を作成するための便利な組み込みメソッド fromkeys() (指定しない場合、デフォルトは None): ddict = { }.fromkeys(('x', 'y'), -1 )
>>> ddict
{'y': -1, 'x': -1}
>>>
> ;>> 布告 = {}.fromkeys(('foo' , 'bar'))
>>> 勅令
{'foo': None, 'bar': None}
2. 辞書内の値にアクセスする方法
① 辞書を走査する(通常はキーを使用する場合)、次のようにキーをループするだけです:
>>> dict2 = {'name': 'earth', 'port ': 80}
>>>
> >>> dict2.keys() のキー:
... print 'key=%s, value=%s' % (key, dict2 [key])
...
key=name, value =earth
key=port, value=80
②Python 2.2から始める
forループで辞書を走査します。
>>> dict2 = {'name': 'earth', 'port': 80}
>>>
>>>> dict2 のキー:
... 'key=%s, value=%s' % (key, dict2[key])
...
key=name, value=earth
key=port, value=80
辞書内の要素を取得するにはの値は、使い慣れた辞書キーと角かっこを使用して取得できます。
>>> dict2['name']
'earth'
>>>
>>> print 'host %s is running on port %d' %
... (dict2['name'], dict2['port'])
host Earth is running on port 80
③辞書のすべてのメソッド。 has_key() および in 演算子と not in 演算子はすべてブール型です
>>> dict2 # または dict2.has_key('server')
False
>>> in dict # or dict2.has_key('name')
True
>>> dict2['name']
'earth'
辞書内で数値と文字列を混合する例:
>>> dict3 = {}
>>> dict3[1] = 'abc'
>>> dict3['1'] = 3.14159
>>> dict3[3.2] = 'xyz'
>>> dict3
{3.2: 'xyz', 1: 'abc', '1': 3.14159}
3. 辞書を更新します
上記の例では、dict2['name ']= 'earth';
Update dict2['name']='abc';
4. 辞書要素と辞書を削除
del dict2['name'] # キー「name」を持つエントリを削除します
dict2。 clear() # dict2 のすべてのエントリを削除します
del dict2 # dict2 辞書全体を削除します
dict2.pop('name') # キー「name」を持つエントリを削除して返します
dict2 = {'name': 'earth' , 'ポート' dict2.values()
[80, '地球']
>>>
>>> dict2.items()
[('ポート', 80), ('名前' , 'earth')]
>>>
> ;>> for eachKey in dict2.keys():
... print 'dict2 key', eachKey, 'has value', dict2[eachKey]
...
dict2 キーポートの値は 80
dict2 キー名の値は Earth
update() メソッドを使用して、ある辞書の内容を別の辞書に追加できます
{'server': 'http', 'ポート': 80, 'ホスト': 'venus'}
dict3.clear()
>>> dict3
>>> , y=2)
{'y': 2, 'x' : 1}
>>> dict8 = dict(x=1, y=2)
>>> dict8
{'y ': 2, 'x': 1}
>>> ; dict9 = dict(**dict8)
>>> dict9
{'y': 2, 'x': 1}
dict9 = dict8.copy()
辞書組み込みメソッド:
辞書キー値: dict9.keys()
辞書値: dict9.values()
すべての辞書項目: dict9.items()
戻り辞書値:dict9.get('y')
表 7.2 辞書の種類メソッド
メソッド名 操作
dict.cleara() 辞書内のすべての要素を削除します
dict.copya() 辞書のコピー (浅いコピー) を返します
dict.fromkeysc(seq,val=None) c は、新しい辞書を作成するには、 seq の要素を辞書のキーとして使用し、 val を辞書内のすべてのキーに対応する初期値として使用します (この値が指定されていない場合、デフォルトは None になります)
dict.get(key ,default=None)a 辞書の場合 dict のキー key は、対応する値 value を返します。キーが辞書に存在しない場合は、default の値が返されます (パラメータdefault のデフォルト値は None であることに注意してください)。 dict.has_key(key) key(key) が辞書に存在する場合は True を返し、それ以外の場合は False を返します。Python 2.2 で in と not in が導入された後、このメソッドはほぼ廃止されましたが、それでも機能するインターフェイスを提供します。
dict.items() 辞書内の (キー、値) ペアのタプルを含むリストを返します
dict.keys() 辞書内のキーを含むリストを返します
dict.iter()d メソッド iteritems() 、 iterkeys()、 itervalues() は、リストの代わりに反復子を返すことを除いて、非反復型のものと同じです。
dict.popc(key[,default]) c はメソッド get() と似ています。キー key が辞書に存在する場合は削除し、キー key が存在せずデフォルト値がない場合は dict[key] を返します。が与えられた場合、KeyError 例外が発生します。
dict.setdefault(key,default=None)e はメソッド set() と似ています。キー key が辞書に存在しない場合は、dict[key]=default によって値が割り当てられます。
dict.update(dict2)a 辞書dict2のキーと値のペアを辞書dictに追加します
dict.values()は辞書内のすべての値を含むリストを返します
①②③④⑤⑥⑦⑧⑨⑩
6.型を設定します
①使用set ファクトリ メソッド set() および frozenset():
>>> s = set('cheeseshop')
>>> s
set(['c', 'e', 'h ', ' o', 'p', 's'])
>>> t = frozenset('bookshop')
>>> t
frozenset(['b', 'h', 'k' 、 'o'、 'p'、 's'])
>>> タイプ 'set'>
>>> タイプ(t)
;type 'frozenset'>
②コレクションの更新方法
さまざまなコレクションの組み込みメソッドと演算子を使用して、セットのメンバーを追加および削除します:
>>> s.add('z')
> ;>> s
set(['c', 'e', 'h', 'o', 'p', 's', 'z'])
>>> update('pypi')
>>> s
set(['c', 'e', 'i', 'h', 'o', 'p', 's', 'y ', 'z'])
>>> s.remove('z')
>>> s
set(['c', 'e', 'i', 'h ', 'o', 'p', 's', 'y'])
>>> s -= set('pypi')
>>> s
; , 'e', 'h', ' o', 's'])
③set
del sを削除
④メンバーシップ(in, not in)
>>> s = set('cheeseshop' )
>>> t = frozenset('bookshop')
>>> 'k' in s
False>>> 'k' in t
>>> ; 'c' は t
True にありません
⑤セットは同等です/等価ではありません
>>> s == t
False
>>> s != t
True
>>> u = frozenset(s)
>>> s == u
True
>>> set('posh') == set('shop')
True
⑥差分補数/相対補数( -)
two 集合 (s と t) の差の補数または相対補数は、集合 C を参照します。この集合の要素は集合 s にのみ属し、集合 t には属しません。差分符号には同等のメソッド、Difference() があります。
>>> s - t
set(['c', 'e'])
対称差分 (^): 対称差分はセットの XOR