day05-字典的基本操作
dict
用大括号括起来,里面分为key和value,key必须是可哈希的,不可变类型,value可以是随意值。
增删改查
1.增加
dic = {'昆凌':'周杰伦的老婆'}
dic['国际章'] = "汪峰的老婆" # 新增加的,如果key存在则重新赋值
dic.setdefault('马蓉',"宝强的前任") # setdefault如果字典里有了这个key,则不再添加
2.删除
ret = dic.pop("昆凌")
ret = dic.popitem() # 返回给你的是一个元祖,随机删除.
del ["昆凌"]
clear()
3.修改
dic.update(dic1) #把dic1的内容更新到dic中
直接修改div['昆凌'] = "美女"
4.查询
print(dic["昆凌"]) # 如果有key存在,则打印值。反之报错
print(dic.get("及时雨","haha"))#如果key不存在返回默认值,没有默认值返回none.
ret = dic.setdefault("及时雨123","hello") # 返回hello
print(ret)
#1,首先判断原来的字典中有没有这个key,如果没有,执行新增.
# 2.用这个key去字典中查询,返回查到的结果.
字典的常用方法
dic = {"及时雨":"松江","小李广":"华容"}
print(dic.keys()) # 拿到所有的key,返回key的集合,像是列表,可以进行迭代循环
print(dic.values()) # 拿到所有的values
print(dic.items()) # 拿到键值对.
# 解构,解包
a,b = (1,2)
字典的for循环
dic = {1:"a",2:"b"}
for key in dic:
print(key) # 返回key.
字典的嵌套
dic = {"name","weishao","age":21,"家属":["a","b","c"],"children":[{"name":"yan"},{"name":"xu","age",12}]
找weishao的儿子xu的年龄
dic["children"][1]["age"]