字典dict
定义
- key-value 键值对数据的集合
- 可变的、无序的,key 不重复
- 可 hash 才可以作为 key,和 set 元素要求一致
- 定义和初始化
d = dict()或d = {}dict(**kwargs)使用 name = value`对初始化一个字典d = {'a':10,'b':None,'c':[1,2,3]}- 类方法
dict.fromkeys(iterable,value)d = dict.fromkeys(range(5))d = dict.fromkeys(range(5),0)
字典元素的访问
d[key]- 返回 key 对应的值 value
- key 不存在抛 keyError 异常
get(key[,default])- 返回 key 对应的值 value
- key 不存在返回缺省值,无缺省值返回 None
- 举例:
d2.get(key)
setdefault(key[,default])- 返回 key 对应的值 value
- key 不存在,添加 kv 对,value 为 default,并返回 default
- 如 default 没有设置,缺省值为 None
字典增加和修改
d[key] = value- 将 key 对应的值修改为 value
- key 不存在,添加新的 kv 对
update([other])- 使用另一字典的 kv 对更新本字典
- key 不存在就添加
- key 存在,覆盖 key 对应的值
- 举例:
d1.update(d2,'red'=1)#d2 后面是二元组就行
字典删除
pop(key[,default])- key 存在,移除它,并返回 None
- key 不存在,返回给定的 default
- default 未设置,key 不存在抛 keyError 异常
popitem()- 移除并返回一个任意的 kv 对
- 字典为 empty,抛 keyError 异常
clear()- 清空字典
- del 语句
- 删除的是对象的引用,本质上删除的是名称,而不是对象
字典遍历
-
遍历 key
-
for k in d: print(k) -
for k in d.keys(): print(k)
-
-
遍历 value
-
for k in d: print(d[k]) -
for k in d.keys(): print(d.get(k))
-
-
遍历 item,即 kv 对
-
for item in d.items(): print(item) -
for k,v in d.items(): print(k,v)
-
-
在 python3 中,keys,values,items 方法返回一个类似一个生成器的可迭代对象,不会把函数的返回结果复制到内存中

浙公网安备 33010602011771号