字典的使用方法
dict 用{}来表示,它是键值对数据{key,value}有唯一性
键:都必须是可哈西的,只要是不可变数据就可以当做字典中的键
值:没有任何限制
字典的增加
第一种方法
dic = {"火女": "安妮","火男": "布兰德", "草丛伦": "盖伦", "琴女": "蔢娜"}
dic["剑圣"] = "无极剑圣" #直接增加一个没有的key,如果key存在则直接修改
print(dic) #运行结果{'火女': '安妮', '火男': '布兰德', '草丛伦': '盖伦', '琴女': '蔢娜', '剑圣': '无极剑圣'}
第二种方法
dic = {"火女": "安妮","火男": "布兰德", "草丛伦": "盖伦", "琴女": "蔢娜"}
dic.setdefault("剑圣","无极大师") #如果这个key已存在,则不进行增加
print(dic) #运行结果 {'火女': '安妮', '火男': '布兰德', '草丛伦': '盖伦', '琴女': '蔢娜', '剑圣': '无极大师'}
字典的删除
第一种方法
dic = {"火女": "安妮","火男": "布兰德", "草丛伦": "盖伦", "琴女": "蔢娜"}
dic.pop("火女") # 以key值来删除
print(dic) #运行结果 {'火男': '布兰德', '草丛伦': '盖伦', '琴女': '蔢娜'}
第二种方法
dic = {"火女": "安妮","火男": "布兰德", "草丛伦": "盖伦", "琴女": "蔢娜"}
del dic["火男"] # 用key值删除
print(dic) # 运行结果 {'火女': '安妮', '草丛伦': '盖伦', '琴女': '蔢娜'}
第三种方法
dic = {"火女": "安妮","火男": "布兰德", "草丛伦": "盖伦", "琴女": "蔢娜"}
dic.popitem() # 随机删除键值对
print(dic) # 运行结果 {'火女': '安妮', '火男': '布兰德', '草丛伦': '盖伦'}
第四种方法
dic = {"火女": "安妮","火男": "布兰德", "草丛伦": "盖伦", "琴女": "蔢娜"}
dic.clear() # 直接清空字典
字典的改变
第一种方法
dic = {"火女": "安妮","火男": "布兰德", "草丛伦": "盖伦", "琴女": "蔢娜"}
dic["草丛伦"] = "德玛西亚之力" #直接对key值进行赋值,存在则是对value修改,不存在就是增加
print(dic) # 运行结果 {'火女': '安妮', '火男': '布兰德', '草丛伦': '德玛西亚之力', '琴女': '蔢娜'}
第二种方法
dic = {"火女": "安妮","火男": "布兰德", "草丛伦": "盖伦", "琴女": "蔢娜"}
dic1 = {"维恩": "UZI", "火女": "安妮"}
dic.update(dic1) # 将dic1若融合到dic中
print(dic1) # 运行结果 {'火女': '安妮', '火男': '布兰德', '草丛伦': '盖伦', '琴女': '蔢娜', '维恩': 'UZI'}
字典的查询
第一种方法
dic = {"火女": "安妮","火男": "布兰德", "草丛伦": "盖伦", "琴女": "蔢娜"}
print(dic["琴女"]) #直接查询 要注意这里的dic["琴女"]是有返回值的
结果:蔢娜
第二种方法
dic = {"火女": "安妮","火男": "布兰德", "草丛伦": "盖伦", "琴女": "蔢娜"}
print(dic.get("草丛伦")) #通过get得到的返回值 如果不存在key怎返回none
结果:盖伦
第三种方法
dic = {"火女": "安妮","火男": "布兰德", "草丛伦": "盖伦", "琴女": "蔢娜"}
print(dic.setdeault("火男")) #通过key查找,如果不存在key则返回none
第四种方法
dic = {"火女": "安妮","火男": "布兰德", "草丛伦": "盖伦", "琴女": "蔢娜"}
for i in dic: # for查询 这是遍历查询 查询出来的是key值
print(i)
#运行结果:
火女
火男
草丛伦
琴女
字典的一些其他操作
values方法:
dic = {"火女": "安妮","火男": "布兰德", "草丛伦": "盖伦", "琴女": "蔢娜"}
for i in dic.values():
print(i) #遍历出value的值
#运行结果:
安妮
布兰德
盖伦
蔢娜
keys方法:
dic = {"火女": "安妮","火男": "布兰德", "草丛伦": "盖伦", "琴女": "蔢娜"}
for i in dic.keys():
print(i) #遍历出key的值
#运行结果:
火女
火男
草丛伦
琴女
注意:遍历keys方法和直接遍历dic字典是一样,都是遍历出key值
items方法
dic = {"火女": "安妮","火男": "布兰德", "草丛伦": "盖伦", "琴女": "蔢娜"}
for i in dic.items():
print(i) # 遍历出里面的键值对,以元组形式输出
#运行结果
('火女', '安妮')
('火男', '布兰德')
('草丛伦', '盖伦')
('琴女', '蔢娜')
解构:
a, b = 1, 2
print(a, b) # 直接分别把1,2赋值给a,b
a, b = (1, 2)
print(a, b) # 直接分别把元组1,2赋值给a,b
a, b = [1, 2]
print(a, b) # 直接分别把列表中1,2赋值给a,b
以上的解构赋值个数是不限的
字典的嵌套
例子:
dic = {
'name':'汪峰',
'age':43,
'wife':{
'name':'国际章',
'age':39,
'salary':100000
},
'baby':[
{'name':'熊大','age':18},
{'name':'熊二','age':15},
]
}