# 字典 使用大括号
a = {} # 定义一个空的字典
b = {"name": "小明", "age": 18} # 自定义字典
c = dict() # 通过函数创建空的字典
print(f"{a} {b} {c} {type(a)} {type(a)} {type(a)} ")
# {} {'name': '小明', 'age': 18} {} <class 'dict'> <class 'dict'> <class 'dict'>
# 修改元素,如果key存在,则修改,不存在则增加
a = {}
a["name"] = "小李"
print(a) # {'name': '小李'}
a["name"] = "小张"
print(a) # {'name': '小张'}
# 删除
a = {"name":"小明", "age": 18}
#del a
#print(a) # 报错
del a["name"] # 删除某个key,如果key不存在,则会报错
print(a) # {'age': 18}
a.clear() # 清空字典
print(a) # {}
# 查看
a = {"name":"小明", "age": 18}
print(a["name"]) # 小明 如果不存在,则会报错
print(a.get("name")) # 小明
print(a.get("hello")) # None, 如果不存在,则会返回None
print(a.get("hello", "大猪蹄子")) # 大猪蹄子 ,可以指定如果没有对应的key,返回的默认值
# 获取所有的key
print(a.keys()) # dict_keys(['name', 'age'])
print(a.values()) # dict_values(['小明', 18])
print(a.items()) # dict_items([('name', '小明'), ('age', 18)])
# 字典的遍历
for t in a.keys():
print(t)
print(a[t])
print("*"*30)
for t in a.values():
print(t)
print("*"*30)
for i, j in a.items():
print(f"{i} {j}")
print("*"*30)
'''
name
小明
age
18
******************************
小明
18
******************************
name 小明
age 18
******************************
'''