集合类型内置方法
作用
存储多个值
定义方式
{}内以逗号隔开多个元素,这个元素必须是不可变类型(不是任意类型)
s1 = {1,1,2,3,'a'}
s2 = set() # 定义空集合
方法
pythoner = {'demon','wangdapao','wangwu','zhaoliu','zhangsan','wangba'}
linuxer = {'kaka','kaka','wangba','wangdapao'}
javaer = {'kaka','wangba','wangdapao'}
# 说明中提到的A集合都是写在运算符前面的集合,B是写在运算符后面的集合
#必须掌握
# 去重, 去重的同事会打乱列表元素原有的顺序
l1 = [1,2,1,2,3,5,100,0,-1000]
print(set(l1))
print(list(l1))
print(list(set(l1)))
print("- "*50+"
")
# 长度
print(len(l1))
# 成员运算
# |并集 将两个列表中元素合并起来并去重
print(pythoner | linuxer)
print(pythoner.union((linuxer)))
# &交集 返回两个列表里面相同的元素
print(pythoner & linuxer)
print(pythoner.intersection(linuxer))
## -差集 找到B集合在A集合中没有的元素
print(pythoner - linuxer)
print(pythoner.difference(linuxer))
# ^对称差集 将两个列表中不同的元素做并集
print(pythoner ^ linuxer)
print(pythoner.symmetric_difference(linuxer))
# == 判断两个集合中元素是否相同,相同则返回True
print(pythoner == linuxer)
# 父集 >、>= 判断A集合是否包含B集合
print(linuxer>=javaer)
# 子集 <、<= 判断B集合是否包含A集合
print(linuxer<=javaer)
# 需要掌握
# add 在集合中添加指定元素
s = {1,2,'a'}
s.add(3)
print(s)
# remove 删除集合中的指定元素
s = {1, 2, 'a'}
s.remove(1)
print(s)
# difference_update 移除两个集合中都存在的元素
s = {1, 2, 'a',3}
s1 = {'a'}
print(s.difference(s1))
# discard 移除指定的集合元素
s = {1, 2, 'a',3}
s.discard(3)
print(s)
# isdisjoint 如果这两个集合的交集为空,则返回True
print(pythoner.isdisjoint(linuxer))
存储一个值or多个值
多个值
有序or无序
无序
可变or不可变
可变