# set 集合类型

'''
+ set集合是一个 无序且元素不重复的 集合数据类型
+ set集合使用 中括号或者set（）方法来定义
'''

# 集合的定义方式
# vars = {1, 2, 3 , 'a', 'b'}  # <class 'set'>
# vars = set('123456')  #  <class 'set'>

# 如果需要定义一个空集合 只能使用set 方法，因为大括号时定义的空字典
# vars = {}  # <class 'dict'>
# vars = set()  # class 'set'>


a = {1, 2, 3, 'a'}
# 给集合添加元素
a.add('b')
# 无法获取集合单个元素， 但是可以添加和删除
print(a.discard('a'))
# print(a)
# 检测当前元素是否在集合中
# print('a' in a)  # 返回结果为布尔值，Ture或False



# 集合主要用于运算，交集，差集，并集，对称集合
a = {1, 2, 3, 'a', 'b'}
b = {1, 'a', 22, 33}
print(a & b)  # 交集 {'a', 1}
print(a - b)  # 差集 {'b', 2, 3}  a有，b没有
print(a | b)  # 求并集 {1, 2, 3, 33, 'a', 'b', 22}  两个集合放在一起，并去重
print(a ^ b)  # 对称差集 {33, 2, 3, 'b', 22} 剔出两者都有的



