映射是一种键(索引)和值(数据)的对应,用户为数据定义索引
字典类型是映射的体现
键值对:键是数据索引的扩展
字典是键值对的集合,键值对之间无序
采用大括号 {} 和 dict()创建,键值对用冒号 : 表示
例如:{<键1>:<值1>,<键2>:<值2>,...,<键n>:<值n>}
在字典变量中,通过键获得值,例如:
> d = {"中国":"北京","美国":"华盛顿","法国":"巴黎"}
> d
{"中国":"北京","美国":"华盛顿","法国":"巴黎"}
> d["中国"]
'北京'
如何生成一个空字典
> de = {} ; type(de)
<class 'dict'>
空的 {} 默认生成空字典,使用函数type(x)来去检测任何一个变量x的类型
向字典新增2个键值对元素并修改第2个元素
> d["a"] = 1 ;d["b"] = 2
> d["b"] = 3
字典处理函数及方法
函数或方法 | 描述 |
---|---|
del d[k] | 删除字典d中键k对应的数据值 |
k in d | 判断键看是否在字典中,如果在返回True,否则返回False |
d.keys() | 返回字典d中所有的键信息 |
d.values() | 返回字典d中所有的值信息 |
d.items() | 返回字典d中所有的键值对信息 |
d.get(k,< default >) | 键k存在,则返回相应值,不存在则返回< default >值 |
d.pop(k,< default >) | 键k存在,则取出相应值,取出后要删除字典中对应的键值对,不存在则返回< default >值 |
d.popitem() | 随机从字典d中取出一个键值对,以元组形式返回 |
d.clear() | 删除所有的键值对 |
len(d) | 返回字典d中元素的个数 |
例如:
> d = {"中国":"北京","美国":"华盛顿","法国":"巴黎"}
> "中国" in d
True
> d.keys()
dict_keys(['中国','美国','法国'])
> d.values()
dict_values(['北京','华盛顿','巴黎'])
> d.get("巴基斯坦","伊斯兰堡")
'伊斯兰堡'
d.keys() 和 d.values() 返回的并不是列表类型,它返回的是一种字典的key类型或者字典的values类型,这种类型可以用 for in 的方式做遍历,不能当作列表类型来操作