字典常用操作
#
字典的创建方式#
方式一 直接创建#
方式二 快速创建#
方式三 元组嵌套#
增通过键值对直接增加 有则改之,无则增加
setdefault 有则不变,无则增加 dict.setdefault(key, default=None)
#
删pop 通过key删除字典的键值对,返回删除的值,可设置返回值。
popitem 3.5版本之前,popitem为随机删除,3.6之后为删除最后一个,有返回值
#
改通过键值对直接改
#
查get 可以设置返回值
三种特殊的 keys values items
#
update :可增可改可更新更新,有则覆盖,无则增加
#
fromkeys创建一个字典:字典的所有键来自一个可迭代对象,字典的值使用同一个值。(坑)
#
循环字典,改变字典大小的问题来,先来研究一个小题,有如下字典:dic = {'k1': '黑黑', 'k2': 'barry', 'k3': '白白', 'age': 18,...}
请将字典中所有键带k元素的键值对删除。你要遍历所有的键,符合的删除,对吧? 嗯,请开始你的表演。
你会发现,报错了。。。。。
翻译过来是:字典在循环迭代时,改变了大小。
他的意思很简单,你的字典在循环时,不要改变这个字典的大小,只要改变大小,就会报错!那么怎么解决???
改变思路,把字典转换成列表,循环列表,然后对字典进行循环删除操作
所以说,他和列表差不多,只不过比列表更暴力一些,对其进行总结就是:
在循环一个字典的过程中,不要改变字典的大小(增,删字典的元素),这样会直接报错。