# dict 字典,键值对列表,类似java的map集合
dict1 = {"name": "张三", "age": 18, "sex": "男"}
print(dict1["name"])
# 如果访问一个不存在的键
# print(dict1["height"]) # 会报错
# 如果不确定键是否存在,可以用get来获取
print(dict1.get("height")) # 返回None
# 如果我们不想返回None,可以设定一个默认值
print(dict1.get("height", "140"))
# 增
dict1['address'] = "北京"
print(dict1)
# 修改
dict1['name'] = "李四"
print(dict1['name'])
# 删除
del dict1["age"] # del 是吧这个键值对都删除了
print(dict1) # 没有age了
# 清空字典
dict1.clear()
print(dict1)
# 查询
dict2 = {"name": "张三", "age": 18, "sex": "男"}
print(dict2.keys()) # 所有的键
print(dict2.values()) # 获取所有的值
print(dict2.items()) # 获取所有的项
# for循环可以设置两个值,key用来获取键,value用来获取值
for key, value in dict2.items():
print("键为:%s,值为%s" % (key, value))
集合:set
set 只有键,没有值,无序
set1 = {"name", "age", "sex", "name", "height"}
print(set1)
# 可以用来给列表去重
list1 = [1, 2, 3, 1, 2, 1, 2, 1, 1, 2, 8, 5]
set2 = set(list1)
print(set2)