字典 dict { } 无序的 'key':'values'

#列表 list [ ]
#元组 tuple ( )
info = {'stu1101':"Tenglan wu",
'stu1102':"Longze Luola",
'stu1103':"Xiaoze Malioya"}
#print(info)
'''

print(info["stu1101"]) #查找
print(info.get('stu1104')) #查找 key不存在不会报错 查找一般用这种
print('stu1104' in info) ''' #查找 也不会报错
'''
info["stu1101"] = "武腾兰" #修改value info["key"] = "修改的value"
info["stu1104"] = "CangJinkong" #添加
#print(info)
#del info["stu1101"] #删除
#info.pop("stu1104") #删除
info.popitem() #随机删 一般不用
print(info) '''

#字典嵌套 变量 = {"key":{},"key":{}}
av_catalog = {
"欧美":{
"www.youporn.com": ["很多免费的,世界最大的","质量一般"],
"www.pornhub.com": ["很多免费的,也很大","质量比yourporn高点"],
"letmedothistoyou.com": ["多是自拍,高质量图片很多","资源不多,更新慢"],
"x-art.com":["质量很高,真的很高","全部收费,屌比请绕过"]
},
"日韩":{
"tokyo-hot":["质量怎样不清楚,个人已经不喜欢日韩范了","听说是收费的"]
},
"大陆":{
"1024":["全部免费,真好,好人一生平安","服务器在国外,慢"]
}
}

av_catalog["大陆"]["1024"][1] = "可以在国内做镜像" #对嵌套里面的字典里面的列表修改

info = {'stu1101':"Tenglan wu",'stu1102':"Longze Luola",'stu1103':"Xiaoze Malioya"}
#print(av_catalog)
print(info.values()) #把所有的值values打印出来
print(info.keys()) #打印所有的key

av_catalog.setdefault("台湾",{"www.baidu.com":[1,2]})
'''
设置默认字典 如果字典里key值有taiwan,那就把里面的值
返回出来,如果字典里面key值没有taiwan,那就创建{"www.baidu.com":[1,2]}嵌套字典
格式为 变量.setdedault("key",{key:values}) '''

#print(av_catalog)
'''
info = {'stu1101':"Tenglan wu",'stu1102':"Longze Luola",'stu1103':"Xiaoze Malioya"}
b = {'stu1101':"alex",
1:3,
2:5}
info.update(b) #info和b字典交叉合并,value有相同的部分的就修改成update里面字典的value值,没有相同的value值就添加
print(info)
print(info.items()) # 字典转成列表
c = dict.fromkeys([6,7,8],"test") # 创建新的字典 变量 = dict.fromkeys([key],"values")
print(c)
c = dict.fromkeys([6,7,8],[1,{"name":"alex"},444])
c[7][1]['name'] = "jackchen"
#嵌入的字典共用一个内存地址,改了嵌入字典其中一个key的value,那字典里其他key相应的嵌套部分的value也会变
print(c)
'''
#字典循环
info = {'stu1101':"Tenglan wu",
'stu1102':"Longze Luola",
'stu1103':"Xiaoze Malioya"}
#print(info)
for i in info:
print(i,info[i]) #建议用这种

for k,v in info.items(): #不建议这种 item把一个字典转换成列表,非常耗内存,影响效率
print(k,v)