字典以键值对的形式存在,即一个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