python 字典 字典的基本操作
len(dict) 返回该字典中key与value的数量
>>> d = dict(name=1,age=2) >>> len(d) 2
dict[key]返回关联到K上的值
>>> d['name'] 1
dict[key]=new value new value 会把原先与key值对应值替换掉
这里需要注意的是,如果key键不存在的话,python会自动对该字典进行添加。
>>> d['name']=3 >>> d {'age': 2, 'name': 3} #可以看到'name'的值已经由原先的1变为了现在的3
del dict[key] 删除某键,删除后对应的值也被删除
del dict 删除该字典。之前说过clear,这个是清空字典,而del是把整个字典删掉。
key in dict 检查字典中是否有key值,有返回True没有返回False
注意:
在字典与列表中都有in
字典 k in d 查询的是字典的key
列表 v in l 查询的是列表的value
实例:用python做一个学生的管理系统,系统很差,主要学习下字典的一些用法。
#先把所有的学生都定义到一个字典里面,这里用到了字典的嵌套,字典中套字典 studentinfo = { 'st1':{ 'age':21, 'fengshu':{ 'ch':80, 'ma':75, 'en':85} }, 'st2':{ 'age':23, 'fengshu':{ 'ch':75, 'ma':82, 'en':78} } } #看字典可以这么添加新的\key和值 studentinfo['st1']['fengshu']['python']=60 studentinfo['st2']['fengshu']['python']=80 #用相同的方法还可以对已有的key进行值的修改 studentinfo['st1']['fengshu']['ma']=89 # 删除字典中某个key del studentinfo['st1']['age'] '''这是对字典中‘fengshu’里的值进行排序,。values()是把‘fengshu'下的值取出来,在前面的随笔中写了。values()返架的是一个列表,所以sort()对该列表进行排序,''' binfo = studentinfo['st2']['fengshu'].values() binfo.sort() print binfo ''' pop()删除字典中某值,如果不存在则返回‘haha' ,同样是删除为什么在这里不用del呢? 答,可以用,但如果未找到要删除的值则返架错误了。''' print studentinfo.pop('city','hahah')