字典以键值对的形式存在,即一个key对应一个value
定义:d={}
d = {key1 : value1, key2 : value2 }
键必须是唯一的,且为不可变类型(如字符串,数字或元组),可变类型不能作为字典的key
值可以是任何数据类型
>>> type(d) <class ‘dict‘> >>> isinstance(d,dict) True
#增
>>> d[1]="abc" #增 key 和value key为不可变类型 >>> d {1: ‘abc‘}
#改
>>> d[1]=66 #key相同时原来的值会被覆盖掉 >>> d {1: 66} >>>
>>> d=dict(a=1,b=2)#另一种方式生成字典 >>> d {‘a‘: 1, ‘b‘: 2} >>>
#查:可以按key来查,也可以遍历来查
#访问字典里的值,把相应的键放入到方括号中
>>> d={‘a‘:1,‘b‘:2,‘c‘:3} >>> d[‘a‘] 1 >>> d[1] #字典不是有序的,不能以下标来访问里面的值,否则报错 Traceback (most recent call last): File "<stdin>", line 1, in <module> KeyError: 1
#遍历字典的key的两种方式
①
>>> d={‘a‘:1,‘b‘:2}
>>> for i in d: ... print(i) ... a b
② >>> for i in d.keys(): ... print(i) ... a b >>>
#遍历values的方式
>>> for i in d.values(): ... print(i) ... 1 2 >>>
#同时遍历key和values
>>> for k,v in d.items(): ... print(k,":",v) ... a : 1 b : 2 >>>
#删:能删单一的元素也能清空字典
>>> d {‘a‘: 1, ‘b‘: 2, ‘c‘: 3} >>> del d[‘a‘] #删除键‘a’ >>> d {‘b‘: 2, ‘c‘: 3} >>> d.clear() #清空字典 >>> d {} >>> del d #删除字典>>> dTraceback (most recent call last): File "<stdin>", line 1, in <module>NameError: name ‘d‘ is not defined