#字典
无序(没有下标)---通过key访问
info = {
'stu1101':"TengLan Wu",
'stu1102':"LongZe Luola",
'stu1103':"XiaoZe Maliya",
}
print (info)
#查
print(info["stu1101"]) #若值不存在,则报错
print(info.get("stu1101")) #若值存在,则返回,若不存在,则返回None
print("stu1104" in info) #判断值是否存在,存在返回true,不存在返回false
#改
info["stu1101"]="武藤兰"
info["syu1104"]="林老师" #若字典中没有1104这个编号的数据,则自动创建一个
#删除
del info["stu1101"]
info.pop("stu1101")
info.popitem() #随机删除
#多级字典嵌套及操作
(以王者荣耀的人物为例)
catalog={
"打野":{
"李白":["飘逸","豪迈"],
"兰陵王":["凶狠","无形"]
},
"辅助":{
"蔡文姬":["奶妈","抗揍"], #注意逗号的位置以及是否能忽略
"大乔":["回家","传送"]
},
"射手":{
"后裔":["站撸","短命"],
"公孙离":["灵活","天秀"]
},
}
#catalog["射手"]["后裔"][1]="狂暴" #修改数值
#catalog.keys() #搭配print打印key值,其他不打印(注意有s)
#catalog.values() #搭配print打印除了key值以外的所有数据(注意有s)
#catalog.setdefault() #到字典寻找是否有匹配的值,如找不到,创建新值,若找得到,则默认值为原来的数值
b={
'2017':'当年',
1:3,
5:9
}
#catalog.update(b) #将b导入到catalog,若有匹配得到,则更新catalog,若没有,则在catalog中创建新的
#catalog.items() #将一个字典转为列表
#a=dict.fromkeys([1,2,3],"item") #初始化字典dict,并对应Key值进行赋值
print(a)
'''注意用fromkeys时候对其中的操作相当于对整个列表的操作,如只想修改1的值,但是用fromkeys会连123一起修改,
可以理解为123共享同一个地址空间'''
print(a)
#循环打印:
#打印key值
for i in info:
print(i)
#打印所有(效率优于下面一种)
for i in info:
print(i,info[i])
#for k,v in info.item():
print(k,v)