字典dict
- key-value键值对的数据的集合
- 可变、无序、不可重复
- 注意:key值还是必须要可hash类型 value没有限定
字典dict定义 初始化
- d = dict() 或者 d= {} , 这种方式是先定义个空字典 后面再添加元素
- dict(**kwargs) 使用name=value对 初始化
- 其实我们最常用的定义方式是下面这种
- 如图,a,b,c,d都是key 冒号后面都是value,其中c的value值是列表 都是没关系的
字典元素的访问
- d[key]
- 返回key对应的值value
- key不存在抛出keyerror异常
- 如图 c 知道了 但是e没找到就报错了
- get(key[,default])
- 返回key对应的值value
- key不存在返回default,如果没有设置default就返回None
- 如图,取c没问题,取e的时候不报错了,给了默认值就输出0,没给就输出None
- setdefault(key[,default])
- 返回key对应的值value
- key不存在,添加kv队,value为default,并返回default,如果没有设置就为None
- 取a的时候 能找到输出了1 取e的时候发现找不到,然后就新增了一个kv,value值为123 应该能理解吧
字典的增加和修改
- d[key] = value
- 将key对应的值修改为value
- key不存在添加新的kv对
- 把a修改成了2 修改h的时候 发现并没有这个Key 所以在最后增加了kv对
- update([other])
- 使用另一个字典的kv对更新本字典
- key不存在,就添加
- key存在,就更新新的value值
- 就地修改
- 其实结果和上面的差不多 就不解释了
字典删除
- pop(key[,default])
- key存在,移除它,并返回他的value值
- key不存在,返回default值
- 如果default未设置,key不存在则抛出异常
- 删除a 没有问题,删除h的时候,当我们设置了default值的时候 输出333,没有设置的时候 就报错了
- popitem()
- 随机移除并返回一个KV对
- 如果字典为空,就会报错
- 两个KV对的字典,只能移除两次,到了第三次就报错了,因为字典为空了
- clear()
- 清空字典
- 如图,很好理解!
我是阿孝,这节课程就到这里,谢谢!