python_26_dictionary

#key-value  字典无下标 所以乱序,key值尽量不要取中文
info={
    'stu1101':'Liu Guannan',
    'stu1102':'Wang Ruipu',
    'stu1103':'Sun Yanan',
}
print(info)
#查找
print(info['stu1101'])#精确查找,若没有则会出错,例如print(info['stu1110'])
print(info.get('stu1110'))#安全查找
print(info.get('stu1103'))
#替换
info['stu1101']='刘冠男'
info['stu1104']='刘冠男'
info['stu1105']='Yu Shasha'
#循环
for i in info:
    print(i,info[i])#打印key与value
for k,v in info.items():#先把字典转成列表,然后打印列表,和上式循环效果相同,但数据量很大的时候会很慢,所以尽量用上式
    print(k,v)
#判断某个数据在不在字典里,在python2中,info.has_key('stu1103')与python3中'stu1103' in info一样,不过3中没有了2中的写法
print('stu1103' in info)
print('stu1110' in info)
#删除
del info["stu1101"]
info.pop('stu1102')
print(info)
info.popitem()#随机删
print(info)