字典
字典---->dict
字典是无序的,可变的 关联性强
键值对
键:使用不可变的数据类型(可哈希),键是唯一的
值:可以任意
定义一个字典
dic = {}#定义字典
字典的增删改查
#增dic1= {"name":"于谦","sex":"男","age":50}dic1["hobby"] = "抽烟,喝酒,烫头" #直接添加--->dic["键"]="值"print(dic1)#{'name': '于谦', 'sex': '男', 'age': 50, 'hobby': '抽烟,喝酒,烫头'}dic1.setdefault("name","郭德刚") #当添加的内容字典里没有,则会添加进去 如果存在则不添加print(dic1)#{'name': '于谦', 'sex': '男', 'age': 50}dic1.setdefault("hobby","抽烟,喝酒,烫头")print(dic1)#{'name': '于谦', 'sex': '男', 'age': 50, 'hobby': '抽烟,喝酒,烫头'}#删del dic1["name"] ---->del dic1["键"] !!!中括号print(dic1)#{'sex': '男', 'age': 50}dic1.pop("sex")------>dic1 pop("键") !!!小括号print(dic1) #{'name': '于谦', 'age': 50}print(dic1.pop("sex"))#返回被删除键的值dic1.clear() #清空字典print(dic1)#--->{}#改dic1["age"]=56 #直接改 dic ["键"]=值print(dic1)--->{'name': '于谦', 'sex': '男', 'age': 56}dic1.update({"hobby":"抽烟,喝酒,烫头"}) #dic.update("字典要更新的内容")print(dic1)#{'name': '于谦', 'sex': '男', 'age': 50, 'hobby': '抽烟,喝酒,烫头'}#查for i in dic1: print(i) #name sex age 返回的是字典的键print(dic1.get("name"))#于谦 dci1.get("键") 返回字典的键对应的值,不存在返回Noneprint(dic1["sex"]) #男 dic1["键"] 返回字典的键对应的值,不存在会报错
字典的其他操作
#key 获取字典中所有的键print(dic1.keys())#dict_keys(['name', 'sex', 'age'])高仿列表 print(list(dic1.keys()))#['name', 'sex', 'age'] 转换为列表#values 获取字典中所有的值print(dic1.values())#dict_values(['于谦', '男', 50])高仿列表print(list(dic1.values()))#['于谦', '男', 50] 转换为列表#items 获取字典中所有的键和值,存在高仿列表的元祖里(元祖第一个为键,第二个为值)for k,v in dic1.items(): print(k,v)
解构
a = 10b =20a,b = b,aprint(a,b)#20 10 整型 字符串 列表 字典 都可以
字典嵌套
通过字典一层一层的找