Python学习笔记017

字典

{键:值,键:值}

没有位置关系,只有映射关系。

id(a) 变量a的内存地址

 

不可变类型:整型,字符串,元组

可变类型:列表,字典

 

键:不可变

值:可变

两大特点:无序,键唯一

如果存在重复键,最后一个替换之前的

 

dic={'name':'Kevin','age':39,'job':'teacher','marriage':True}
print(dic)

d=dict((range(2),(range(10,12))))
print(d)
dic1=dict((('sex','male'),))
print(dic1)

dic2=dict.fromkeys(['host1','host2','host3'],'baby')
print(dic2)

dic3=dict.fromkeys(['host1','host2','host3'],['baby','candy'])
print(dic3)

dic4=dict.fromkeys(dic,dic1)
print(dic4)

dic={'name':'Kevin','age':39,'job':'teacher','marriage':True}
print(dic)

#查找某一键的值
print(dic['name'])

#列出字典中所有键名
print(dic.keys())

#转换成列表
print(list(dic.keys()))

#列出字典中所有值
print(dic.values())

#转换成列表
print(list(dic.values()))

#列出字典中所有键值
print(dic.items())

#转换成列表,由元组构成
print(list(dic.items()))

dic={'name':'Kevin','age':39,'job':'teacher','marriage':True}
print(dic)

#字典增加单个元素,没有键值就增加,已有键值就修改
dic['name']='xy'
print(dic)

dic['sex']='male'
print(dic)

# .setdefault 如有已有键值,不做改变,否者增加键值,有返回值,返回字典值对应键的值
ret1=dic.setdefault('name','xia')
print(ret1)
print(dic)

ret2=dic.setdefault('class','2')
print(ret2)
print(dic)

#合并两个字典,不同键值合并,相同键,更新值
dic_a={'name':'kevin','age':'38'}
dic_b={'hobby':'music','sex':'male'}
dic_a.update(dic_b)
print(dic_a)

dic_c={'name':'kevin','age':'38','sex':'female'}
dic_d={'hobby':'music','sex':'male'}
print(dic_c)
dic_c.update(dic_d)
print(dic_c)

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

av_catalog["欧美"]["www.youporn.com"][1]="高清无码"
print(av_catalog)

dic={'name':'Kevin','age':39,'job':'teacher','marriage':True}
print(dic)

#通过键名删除键值
del dic['name']
print(dic)

ret=dic.pop('age')
print(ret)
print(dic)

# 随机删除某个键值,并以元组形式返回值
dic1={'name':'Kevin','age':39,'job':'teacher','marriage':True}
print(dic1)

ret1=dic1.popitem()
print(ret1)
print(dic1)

#清空整个字典
dic1.clear()
print(dic1)

#删除整个字典
del dic1
print(dic1)

posted @ 2020-03-05 08:43  wtzxxy  阅读(311)  评论(0编辑  收藏  举报