文章目录
一、集合的关系判断
# 集合的关系判断
# 判断集合是否相等 ==和!=
s1={1,2,3,4,5}
s2={3,4,5,6,7}
print(s1==s2) # ==判断是否相等
print(s1!=s2) # !=判断是否不等
# 判断一个集合是否是另一个集合的子集 issubset
s3={1,2}
print(s1.issubset(s2))
print(s3.issubset(s1))
# 判断一个集合是否是另一个集合的超集 超集:A是B的子集 B是A的超集 issuperset
print(s1.issuperset(s3))
# 判断两个集合是否没有交集 isdisjoint
print(s1.isdisjoint(s2))
二、集合的数学操作
# 集合的数学操作
s1={1,2,3,4,5}
s2={2,4,5,6,7}
# 交集 intersection 或 &
print(s1.intersection(s2))
print(s1 & s2)
# 并集 union 或 |
print(s1.union(s2))
print(s1 | s2)
# 差集 difference 或 -
print(s1.difference(s2))
print(s1-s2)
# 对称差集 symmetric_difference 或 ^
# 对称差集 就是 并集-交集
print(s1.symmetric_difference(s2))
print(s1^s2)
三、集合生成式
# 集合生成式 (和列表生成式一样)
# 注意:元组没有生成式
s3={i*i for i in range(10)}
print(s3)
四、列表、字典、元组、集合的比较
"""
列表、字典、元组、集合总结
列表(list) 可变 可重复 有序 []
元组(tuple) 不可变 可重复 有序 ()
字典(dict) 可变 key不可重复,value可重复 无序 {key:value}
集合(set) 可变 不可重复 无序 {}
"""