字典 键值对数据 dict dic ={"键":"值"}
存储数据 字典的查找快一些
不可哈希的是可变的数据,可变的数据不可哈希,不可变的数据可以哈希
字典的键: 是不可变数据类型 键不能重复 ,重复的话就会把值覆盖
字典的值:可以随意没有要求
dict = {‘Alice‘: ‘2341‘, ‘Beth‘: ‘9102‘, ‘Cecil‘: ‘3258‘}
增:
dic = {1:"c",2:"a"}
dic[11] = "小米"# 11是键 小米是值
dic.setdefault(11,"华为")# 1是键 华为是值1先去字典中通过11这个键去查有没有值 没有就是nome
2如果是值 就不进行添加
3 如果是nome ,就添加,返回的是添加的值
dict.fromkeys("可迭代对象")
删:
del dic #删除整个字典del dic [键] # 通过键去删除
dic.pop() # pop 是通过指定键删除 pop也有返回值 返回的是被删除的值
dic.clear() #清空
dic.popitem # 随机删除 pyhton3.6 删除最后一个 python3.5随机删除
改:
dic1 = {"33":"jj","44":"TT"}
dic2 ={"55":"gg","66":"pp"}
dic1.update({dic2}) # update 添加
# 更新 被更新的内容如果在要更新的内容中那么值就被覆盖
# 两个字典中,都没有就合并print(dic1)
dic2["33"]= "tsp"#字典的增是字典中没有的时候叫增,如果字典中有这个键 就叫改
查:
dic1 = {"33":"jj","44":"TT"}
print(dic1[2]) #通过键查找如果键不在报错print(dic1.get(2)) #通过键查找 如果键不在报nomeprint(dic1.setdefault(33)) #找不到报nome
其他操作:
dic= {"33":"jj","44":"TT"}
for i in dic.keys(): # keys 键print(i) # 拿到了每一个键for i in dic.valuse: #vluse 值# 拿到每一个值print(i)
for k,v in dic.items(): # item #获取键值对 以元祖的形式显示print(k)
print(v)
for k,v in dic2.items(): # k,v = (‘33‘,‘gg‘)
print(k)
print(v)
keys() # 获取所有的键 高仿列表
values() # 获取所有的值 高仿列表
item() # 获取键值 以元祖的形式显示
解构 a,b,c = 1,2,3 # 1,2,3 True,False,True ‘456‘ [7,8,9] (7,8,9) {‘1‘:8,‘2‘:9,‘3‘:0} # print(a) # print(b) # print(c)
补充:
# dic2 = {‘33‘:‘gg‘,‘66‘:‘pp‘}
# # ret = dic2.get(‘99‘,‘你傻啊,没有还要拿‘)
# ret = dic2.pop(‘99‘,‘没有‘)
# print(ret)
字典的嵌套:
字典的嵌套:
dic = {‘汪峰‘:{‘光头强‘:‘电锯‘,
‘葛慧倩‘:‘熊大‘,
‘国际章‘:‘熊二‘},
‘陈冠希‘:{‘张柏芝‘:‘喜剧之王‘,
‘阿娇‘:‘千机变‘},
‘韦小宝‘:{‘建宁‘:‘公主‘,
‘龙儿‘:‘教主夫人‘,
‘双儿‘:{‘大双‘:‘榴莲‘,‘小双‘:‘椰子‘},
‘阿珂‘:‘刺客‘}}
dic1 = dic[‘陈冠希‘][‘阿娇‘]
print(dic1)
print(dic[‘韦小宝‘][‘双儿‘])
print(dic[‘韦小宝‘][‘双儿‘][‘小双‘])
原文:https://www.cnblogs.com/zhangguangpei/p/10216845.html
【说明】:本文章由站长整理发布,文章内容不代表本站观点,如文中有侵权行为,请与本站客服联系(QQ:254677821)!