python基础1-字典操作

字典是一种key-value的数据类型
字典的特性:dict无序,key必须唯一
#定义字典
info = {
    'stu1':'aaa',
    'stu2':'bbb',
    'stu3':'ccc'
}

#增
info['stu4'] = 'ddd'
print(info)

#修改
info['stu1'] = 'AAA'
print(info)

#删除
del info['stu4']
print(info)
info.pop('stu3')  #标准删
print(info)
info.popitem()    #随机删
print(info)

#查找
print('stu1' in info)     #判断是否存在
print(info.get('stu1'))   #获取
#print(info['stu11'])       #不存在报错
print(info.get('stu11'))   #不存在不报错,返回None


print(info.values())        #打印value
print(info.keys())          #打印key
info.setdefault('stu4','AAA')   #key存在,不变,不存在就添加
print(info)

b = {
    1:3,
    2:4,
    'stu1':'AAA'
}

#更新字典 ,存在修改,不存在添加
info.update(b)         
print(info)

#字典转成列表
print(info.items())    

#通过一个列表生成默认的dict,少用,有坑
a1  = dict.fromkeys([1,2,3,4])    #初始化一个dict
print(a1)
a2 = dict.fromkeys([1,2,3,4],'test')
print(a2)
a2['2'] = 'test_test'
print(a2)

#坑在这:相当于copy,改一个全改,如果有一层没事,多层内存地址共用
a3 = dict.fromkeys([6,7,8],[1,{'name':'luoliyu'},212])  
print(a3)
a3[6][1]['name'] = 'lly'
print(a3)

#循环dict
#最好用这个
for key in info:          
    print(key,info[key])
    
#会先把dict转成list,数据量大时禁用
for k,v in info.items():      
    print(k,v)

  

 
posted @ 2017-04-03 12:54  larlly  阅读(176)  评论(0)    收藏  举报