day_05 字典
1. 字典 1.成对保存数据 ,以key:value形式保存 2.以{}表示,每项内容都是key:value,元素之间用逗号隔开 3.key是不可重复的 4.字典以hash算法来计算key的hash值,使用hash值来保存数据 hash算法得到唯一的值(可能很大,可能很小.可能正数,可能负数) 可hash(不可变)数据类型:int bool str tuplu 不可hash数据类型:list dic set 5.hash算法是无序的,所以字典的储存是无序的
2. 增改删查 1.增 1.dic.["key"]=value dic[字典中不存在的key]=value,如果已存在key,会修改value值 2.setdefault('key',value) 如果字典中key存在,就不会进行任何操作 2.删 1.pop(key) 指定key删除 2.popitem() 看到的是删除最后一个,实际是随机删除的 3.clear() 清空 4.del dic[key] 3.修改 1.dic[key]=新value dic[已经存在的key]=新value 2.dic.update(dic2) 把dic2的内容覆盖到dic1中,如果key存在,则修改value值, 如果key不存在则新增 4. 查询 通过key来查找具体数据 dic[key] 可能会报错 如果key不存在,会报错 dic.get(key) 当key不存在,默认返回NONE dic.setdefault("x","y") 当key不存在,默认返回y值,当key存在,返回value
3.常见操作 keys() key的集合 values() value的集合 items() 键值对的集合(key,value) 真正的字典的迭代,拿到就是key以及value for k in dic.keys(): print(k) 类似列表,但不是列表,可以把他当列表用 print(dic(key)) for value in vaues(): print(value) 类似列表,但不是列表,可以把他当列表用 for k,v in items(): print(k,v) 这个东西是列表,但是列表里面装的是元组 延伸:结构 a,b=2,3 print(a,b) 结果是2,3(结构的时候注意数量要匹配)