字典由键及其相应的值组成,这种键-值对称为项。
键的类型:字典中的键可以是任何不可变的类型。
成员资格:k in d查找的是键而不是值;v in l查找的是值而不是索引。
字典方法
clear删除所有的字典项
>>> d={}
>>> d["a"]=1
>>> d["b"]=2
>>> d
{'a': 1, 'b': 2}
>>> d.clear()
>>> d
{}
copy返回一个信字典,和原来的相同。
>>> d={}
>>> d["a"]=1
>>> d["b"]=2
>>> d
{'a': 1, 'b': 2}
>>> x=d.copy()
>>> x
{'a': 1, 'b': 2}
这一种是浅复制,因为值ben本身是原件不是副本。替换f副本中的值时,原件不受影响;但是修改副本的值,原件也将发生变化。
深复制可以解决这个问题。
>>> from copy import deepcopy
>>> y=deepcopy(d)
>>> y
{'a': 1, 'b': 2}
fromkeys创建一个新字典,其中包含指定的键,对应的值为none。
items返回一个包含所有字典项的列表,每个元素都为(key,value)的形式。返回值属于字典视图的特殊类型。视图的优点是不复制,始终是底层字典的反映。
keys返回一个字典视图,包含所有的键。
>>> d.keys()
dict_keys(['a', 'b'])
pop用于获取与指定键相关的值,并将该键-值对删除。
popitem随机弹出一个字典项,然后删除。
update使用一个字典项来更新另外一个字典。
values通用返回一个字典视图,但是可以包含重复的值。
>>> d={}
>>> d[1]=1
>>> d[2]=1
>>> d[3]=2
>>> d.values()
dict_values([1, 1, 2])