一、特性:
1、key-value结构,可变数据类型。
2、key必须为可hash,且必须为不可变数据类型(字符串,数字,元祖),必须唯一。
3、可存在任意多个值,可修改,不唯一。
4、无序。
5、查找速度快(根据key查询)。
二、字典的方法
1、增加:info【“”stuo01“】=“cjk”,即把【“”stuo01“】=“cjk”加入到字典中了。
2、修改:info【“”stuo01“】=“wtl”即把【“”stuo01“】=“cjk”改为【“”stuo01“】=“wtl”了。
3、判断元素在不在字典里:用in方法:“stuo01” in info 在字典info里返回True,否则False;
4、获取元素:
get方法:info.get(“stuo01”)有,则返回该元素,没有则返还NONE;
直接通过key返还:info【“stuo01”】,有则返回对应value,不过如果没有则报错,故一般用get方法。
5、删除元素:
pop方法:info.pop(“stuo01”)删除key为stuo01的元素。
popitem方法:info.popitem()随机删除元素。
clear:info.clear()清空字典。
del方法: del info["stuo01"],吧key值为stuo01的元素删除。
6、多级字典的嵌套:利用value可以是字典的特性。
7、info.keys()输出所有的key;info.values()输出所有的value值。
info.items():输出一个列表,列表里吧每个key以及对应的value组成元祖形式。
8、info.update():把2个字典合成一个,如果2个字典里有重复的key,则新加进的字典的key对应的value覆盖。
9、info.setdefault(2,“new2”):如果info里存在为2的key,则返回对应的value值。如果不存在,则创建以2位key,值为“new2”的元素。
10、info.fromkeys(【‘A’,‘B’,‘C’】,‘alex’) :返回key为A,B,C的字典,value均为“alex”,相当于批量赋值。
11、字典的循环:
for k in info:
print(k)打印出字典里的key;
for k in info:
print(k,info【k】)打印出所有key和value,此为最常用的循环方法。
for k,v in info.items():
print(k,v) 效果一样,不过items要先把字典转成列表,再去循环,故效率没有上面那个高。