# dict的增删改查和更新
my_dict = {'name': 'Dragon', 'age': 18, 'sex': '男'}
# 增
my_dict['height'] = '170cm'
# 删
my_dict.pop('sex')
# 改
my_dict['age'] = '19'
# 查
print('name' in my_dict)
# 另外get()方法功能和in是一样的
print(my_dict.get('name', 'Object')) # 第二个参数为查不到的key值返回的参数
# 字典的更新(合并字典)
Curry_dict = {'job': 'NBA', 'height': '193cm'}
my_dict.update(Curry_dict) # {'name': 'Dragon', 'age': '19', 'height': '193cm', 'job': 'NBA'}
# set()集合运算
# a_list = [1,2,3,4,5,1,2,3]
# print(list(set(a_list))) #[1, 2, 3, 4, 5]
my_set = {1, 2, 3, 4, 5}
# 增
my_set.add(10) # 注意如果元素已存在则不会添加上去
# 删
my_set.remove(1)
# del my_set #删除集合本身
# 查
print(4 in my_set)
# 更新
my_set.update({1,2,3})
print(my_set)
#set()运算
a_set = {1,2,3,4,5}
b_set = {4,5,6,7,8}
#交集
print(a_set & b_set) #输出两个set重复的元素
#合集
print(a_set | b_set) #{1, 2, 3, 4, 5, 6, 7, 8}
# - 差集
print(a_set - b_set) #减去公共部分输出剩下的元素
#异或
print(a_set ^ b_set) #输出重复之外所有元素
#另外提一下不可变集合
test_set = frozenset({1,2,3,4,5,2,1})
# test_set.add(2) #报错
# test_set.remove(3) #报错
print(test_set) #去重复