python之操作字典

info = {
    'stu1': 'Sara',
    'stu2': 'John',
    'stu3': 'Michele',
}
'''
info['stu4'] = 'Windy' #增加
#del info['stu4']  #删除
#info.pop('stu4')  #标准的删除
info['stu1'] = 'Sara.zhao' #修改
print(info['stu1']) #Sara  查找
print(info)
'''
print(info.get('stu4')) #这种安全的查找,没有打印None

print('stu4' in info )  #判断值是否在字典里,没有打印False

print(info.values()) #打印出values值
print(info.setdefault('stu1','Alex'))#Sara 键存在在字典中则不会设置为指定值
print(info.setdefault('stu5','Mirror'))#Mirror 键不存在,指定一个值
print(info.setdefault('stu6'))#None 键不存在,不指定值,默认为None

#setdefault() 函数和 get()方法 类似, 如果键不存在于字典中,将会添加键并将值设为默认值。
#print(info.setdefault('stu1','Alex'))#Sara 键存在在字典中则不会设置为指定值
#print(info.setdefault('stu5','Mirror'))#Mirror 键不存在,指定一个值
#print(info.setdefault('stu6'))#None 键不存在,不指定值,默认为None

#update 字典更新 更新字典中的键/值对,可以修改存在的键对应的值,也可以添加新的键/值对到字典中。

b = {'stu1':'Sunny','one':1}
info.update(b)
print(info)#{'stu1': 'Sunny', 'stu2': 'John', 'stu3': 'Michele', 'one': 1}

#info.update(five=5) #传关键字 {'stu1': 'Sara', 'stu2': 'John', 'stu3': 'Michele', 'five': 5}

#info.update([('seven',7)]) #传一个或多个元祖的列表{'stu1': 'Sara', 'stu2': 'John', 'stu3': 'Michele', 'seven': 7}
#item()  把字典转成列表
print(info.items())#把字典转成列表dict_items([('stu1', 'Sara'), ('stu2', 'John'), ('stu3', 'Michele')])

# fromkeys() 第一个参数是key,第二个参数是value
c = dict.fromkeys([6,7,8]) #初始化一个新的字典{6: None, 7: None, 8: None}
c = dict.fromkeys([6,7,8],'test')#{6: 'test', 7: 'test', 8: 'test'}
c = dict.fromkeys([6,7,8],[1,{'name':'sara'},444]) #{6: [1, {'name': 'Sara'}, 444], 7: [1, {'name': 'Sara'}, 444], 8: [1, {'name': 'Sara'}, 444]}

c[7][1]['name'] = 'Sara'#所有的value值都修改为Sara

print(c)
#字典的循环
#这种循环高效
for i in info:
print(i,info[i])
#item(),要先把字典转化成列表,不建议用
for k,v in info.items():
print(k,v)


  

posted on 2021-03-17 10:52  学习ing....  阅读(37)  评论(0)    收藏  举报