dict 字典表属于映射的数据类型
特性:通过键(key),而不是通过下标访问数据
包含任意对象的无序集合
可变长度,可任意嵌套
属于“可变映射” 分类
对象引用表(Hash Table)
声明: d = { } 是一个空的字典表。字典表是一个 {key: value} 的形式。key 只能是不可变的元素(可变类型List就不可以)。
从下面图片你也可以看出 dict 字典表 是一个无序的集合。是通过内部Hash算法排序的
key 只能是不可变类型的数据。可变类型就会抛出错误信息
访问 dict 字典表的元素
不能通过索引访问。不然会报错。 访问 dict[key] 的方式访问。 Key不存在也会抛出错误
访问多层级的 dict 字典表.
通过 get(key) 获取 Value。 通过get 访问有个好处,就是 Key 不存在的时候不会抛出异常,而是返回None
get 方法后面的参数可以设置没有找到时返回的默认值
常用操作
(1) dict() 内置函数,转为 dict 字典表 【当key没有指定类型的时候,默认为字符串】
(2) fromkeys(keys) 将一组数据转化为 dict 字典表的 键
(3) in 判断 Key 是否存在
(4) keys() 获取 dict 字典表的所有键
(5) values() 获取 dict 字典表中所有的值
(6) items() 获取所有的项 ,返回一个数组类型的元组
(7) len(dict) 获取 dict 字典表的长度
(8) copy() 复制 dict 字典表
(9) clear() 清空 dict 字典表
(10) 修改信息 : 直接赋值 或使用 update() 方法
(11) 删除 del 与 pop() 方法 。 pop()方法是将 key:value 删除, 并返回 value 值
pop() 方法第二个参数如果删除的 key:value 不存在,则返回该值 。 不使用第二个参数,删除的key:value不存在会抛异常
(12) popitem() 删除并返回第一个元组类型的元素 。
附:循环输出
附: 带函数 dict 字典表