Day_06_PM_Set
# 集合 set
# 1.无序
# 2.唯一: 不能重复
# 1.创建集合
s = {1, 2, 2, 2, 3, 4}
print(s) # {1, 2, 3, 4}
s = set()
print(s) # set() 空集合
# 无序(每次打印的都不一样)
s = {'a', 'b,', 'c'}
print(s) # {'c', 'a', 'b,'}
# 类型转换
# int()
# float()
# str()
# list()
# tuple()
# dict()
# set()
l = [1, 2, 3] # {1, 2, 3}
l = (1, 2, 3) # {1, 2, 3}
l = "123" # {'2', '1', '3'} (无序)
l = {1: 2, 2: 3, 3: 4} # 只取key {1, 2, 3}, 字典可以转集合,集合不能转字典
print(set(l))
# 列表去重(掌握)
l = [1, 2, 4, 4, 4, 3, 3, 2, 2, 1, 6, 7, 6]
l2 = list(set(l)) # [1, 2, 3, 4, 6, 7]
print(l2)
# 遍历
s = {11, 22, 33}
for n in s:
print(n) # (无序) 33 11 22
# 长度
print(len(s)) # 3
# 增(了解)
s.add(44) # 就是加一个元素(随机加) {33, 11, 44, 22}
s.update([55, 66]) # {33, 66, 11, 44, 22, 55}
print(s)
# 删(了解)
s.remove(33) # {66, 11, 44, 22, 55} 如果删的数没有会报错
# s.discard(333)
s.clear() # set()
print(s)
# 集合之间的关系
s1 = {1, 2, 3, 4}
s2 = {3, 4, 5, 6}
print(s1 & s2) # 交集; {3, 4}
print(s1 | s2) # 并集; print(s1 & s2)
print(s1 - s2) # 差集; {1, 2}
print(s1 ^ s2) # 对称差集; {1, 2, 5, 6} (我有的你没有,你有的我没有)
print(s1 > s2) # s1包含s2; False
print(s1 < s2) # s2包含s1; False