集合是什么
python中,用set来表示一个无序不重复元素的序列。set的只要作用就是用来给数据去重。
可以使用大括号 { } 或者 set() 函数创建集合,但是注意如果创建一个空集合必须用 set() 而不是 { },因为{}是用来表示空字典类型的
交集 使用 & 或 intersection
set01 = {'张三', '李四', '王五', '赵六'}
set02 = {'张三', '赵六', '孙七', '钱八'}
print(set01 & set02) # {'张三', '赵六'}
print(set01.intersection(set02)) # {'张三', '赵六'}
并集 使用 | 或 union
set01 = {'张三', '李四', '王五', '赵六'}
set02 = {'张三', '赵六', '孙七', '钱八'}
print(set01 | set02) # {'张三', '王五', '赵六', '钱八', '李四', '孙七'}
print(set01.union(set02)) # {'张三', '王五', '赵六', '钱八', '李四', '孙七'}
差集 使用 - 或 difference
set01 = {'张三', '李四', '王五', '赵六'}
set02 = {'张三', '赵六', '孙七', '钱八'}
print(set01 - set02) # {'王五', '李四'}
print(set01.difference(set02)) # {'王五', '李四'}
print(set02 - set01) # {'孙七', '钱八'}
print(set02.difference(set01)) # {'孙七', '钱八'}
添加 add() update()
set01 = {'张三', '李四', '王五'}
# add() 将元素整个添加到集合中
set01.add('孙六')
# update() 将元素逐个添加到集合中
set01.update('钱七')
print(set01) # {'七', '李四', '钱', '王五', '孙六', '张三'}
删除 remove(),pop(),discard()
set01 = {'张三', '李四', '王五'}
# remove() 删除集合中的元素 如果有 直接删除 如果没有 程序报错
set01.remore('王五') # {'李四','张三'}
# pop() 删除是随机删除集合中的元素 如果set1没有元素讲程序报错
set01.pop()
print(set01) # {'李四','王五'}
# discard() 元素存在直接删除,不存在返None
print(set01.discard('1111')) # Noew