本文共 1180 字,大约阅读时间需要 3 分钟。
一、特性:
1、key-value结构,可变数据类型。2、key必须为可hash,且必须为不可变数据类型(字符串,数字,元祖),必须唯一。3、value可存在任意多个值,可修改,不唯一。4、无序。5、查找速度快(根据key查询,因为key是必须能被hash,所以根据二分查找法,速度很快)。 二、字典的方法1、增加:info【“”stuo01“】=“cjk”,即把【“”stuo01“】=“cjk”加入到字典中了。2、修改:info【“”stuo01“】=“wtl”即把【“”stuo01“】=“cjk”改为【“”stuo01“】=“wtl”了。3、判断key值在不在字典里:用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要先把字典转成列表,再去循环,故效率没有上面那个高。转载于:https://blog.51cto.com/13543767/2406784