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')

 

 

 

 

 

posted on 2013-05-06 16:56  生命线的挣扎  阅读(365)  评论(0编辑  收藏  举报

导航