#dict(字典)
#字典是无序对象的集合,使用键值(key-value)对存储数据
#具有极快的查询速度
#键(key)必须使用不可变类型
#同一字典中键(key)是唯一的
01 创建字典
#可使用dict()或者{}创建字典对象
#dict() 创建空字典
dt01_1 = dict()
dt01_2 = {}
#dict(mapping)
dt01_3 = {'a':1,'b':2,'c':3}
#dict(iterable)
#此处不能使用{}代替dict()
lt = [1,2,3]
tt = ('a','b','c')
dt01_4 = dict(zip(tt,lt))
dt01_41 = dict((('a',1),('b',2)))
#dict(**kwargs)
#此处不能使用{}代替dict()
dt01_5 = dict(a=1,b=2)
#fromkeys(iterable, value=None, /),使用可迭代对象创建指定默认值的字典
dt01_6 = dict.fromkeys(tt,0)
02 清空字典
#clear(…)
dt02 = dict(a=1,b=2)
dt02.clear()
03 字典拷贝
#copy(…)
dt03 = dict(a=1,b=2)
dt = dt03.copy()
04 获取键的值
#get(self, key, default=None, /)
dt04 = dict(a=1,b=2)
dt = dt04.get('a')
05 获取字典的所有键值对
#items(…)
dt05 = dict(a=1,b=2)
dt = dt05.items()
06 获取字典的所有键
#keys(…)
dt06 = dict(a=1,b=2)
dt = dt06.keys()
07 获取字典的所有值
#values(…)
dt07 = dict(a=1,b=2)
dt = dt07.values()
08 弹出指定的键值对
#pop(k[,d])
dt08 = dict(a=1,b=2)
dt = dt08.pop('c','wrong')
09 按LIFO原则弹出键值对的元祖
#popitem(self, /)
dt09 = dict(a=1,b=2)
dt = dt09.popitem()
10 尝试插入指定键的值,如果键存在返回值,如果不存在则插入
#setdefault(self, key, default=None, /)
dt10 = dict(a=1,b=2)
dt = dt10.setdefault('a','3')
11 更新字典键值对,存在则更新,不存在则插入
#update(…)
dt11 = dict(a=1,b=2)
dt11_1 = dict(a=0,b=1,c=2)
dt11.update(dt11_1)
12 使用键获取值,没有则抛错
dt12 = dict(a=1,b=2)
dt = dt12['a']
13 新增键值对
dt13 = dict(a=1,b=2)
dt13['c'] = 3
14 删除键值对
dt14 = dict(a=1,b=2)
del dt14['a']
del dt14
15 其他操作
dt15 = dict(a=1,b=2,c=3)
- 获取字典长度
len(dt15)
- 获取键最值
min(dt15)
max(dt15)