Python中字典是一些列键 (key) 值 (value) 对组成的,形式如下
{键1:值1,键2:值:2}
每个键值对用冒号隔开,每对之间用逗号隔开
键必须是唯一的,必须是不可变的,如字符串,数字,元组值可以是任何数据类型。
创建几个奇葩的字典:
创建空字典:
除了直接用大括号创建字典,还可以用dict()来创建字典
用法如下:通过放入列表套元组或者元组套列表实现
或者列表套列表、元组套列表
还可以
这种情况下,键只能为字符串类型,并且创建的时候字符串不用加引号。并且不能创建键为数值型的字典。
访问字典中的值
通过 字典名[键]
如果查找的键不在字典里,会报错。
可以查找字典里是否存在某个键:
键 in 字典
返回true或false
更新字典
字典中提供的方法和操作
dict.keys():返回包含字典key的列表
dict.values():返回包含字典所有value的列表
dict.items():返回包含所有键、值的列表
dict.clear():删除字典中的所有项或元素,无返回值(注意:不是删除字典,而是清空字典内容)
dict.get(key,default=None):返回字典中key对应的值,若key不存在,则返回default的值(default默认为None)
dict.pop(key[,default]):如果字典中存在key,则删除并返回key对应的value;如果key不存在,且没有给出default值,则引发KeyError异常。
dict.setdefault(key,default=None):如果字典不存在key,则由dict[key]=default为其赋值
dict.update(adict):将字典adict中键值对添加到dict中
遍历字典:
字典的复制:
由于是浅复制,所以对dict1的修改会影响到dict2,浅指的是复制只是一个引用,可以用id()查看究竟
id()的作用是找到变量或常亮在内存中存的位置,可以看出虽然是两个变量,但是变量的值是同一个。
浅复制示意图:
在字典中,深拷贝可以引入copy模块实现