1、集合的创建
2、集合的相关操作
s={10,20,30,439}
'''集合元素的判断操作'''
print(10 in s)
print(100 in s)
print(10 not in s)
print(100 not in s)
'''集合元素的新增操作'''
s.add(80) #add()一次添加一个元素
print(s)
s.update({200,300}) #update()一次至少添加一个元素
print(s)
s.update([100,99,98])
s.update((78,64,56))
print(s)
'''集合元素的删除操作'''
s.remove(100)
print(s)
s.discard(99)
print(s)
s.pop()
print(s)
True
False
False
True
{10, 80, 20, 439, 30}
{200, 10, 300, 80, 20, 439, 30}
{64, 98, 99, 100, 200, 10, 300, 78, 80, 20, 439, 56, 30}
{64, 98, 99, 200, 10, 300, 78, 80, 20, 439, 56, 30}
{64, 98, 200, 10, 300, 78, 80, 20, 439, 56, 30}
{98, 200, 10, 300, 78, 80, 20, 439, 56, 30}
4、集合间的关系
'''两个集合是否相等(元素相等,就相等)'''
s={10,20,30,40}
s2={30,40,20,10}
print(s==s2)
print(s!=s2)
'''一个集合是否是另一个集合的子集'''
s1={10,20,30,40,50,60}
s2={10,20,30,40}
s3={10,20,90}
print(s2.issubset(s1))
print(s3.issubset(s1))
'''一个集合是另一个集合的超集'''
print(s1.issuperset(s2))
print(s1.issuperset(s3))
'''两个集合是否含有交集'''
print(s2.isdisjoint(s3)) #有交集为False
s4={100,200,300}
print(s2.isdisjoint(s4)) #没有交集为True
True
False
True
False
True
False
False
True
5、集合的数学操作
#交集
s1={10,20,30,40}
s2={20,30,40,50,60}
print(s1.intersection(s2))
print(s1 & s2) #intersectiom()与 & 等价
#并集操作
print(s1.union(s2))
print(s1|s2) #union()与 | 等价
#差集操作
print(s1.difference(s2))
print(s1-s2)
#对称差集
print(s1.symmetric_difference(s2))
print(s1^ s2)
{40, 20, 30}
{40, 20, 30}
{40, 10, 50, 20, 60, 30}
{40, 10, 50, 20, 60, 30}
{10}
{10}
{50, 10, 60}
{50, 10, 60}
6、集合生成式
#列表生成式
lst=[i*i for i in range(10)]
print(lst)
#集合生成式
s={i*i for i in range(10)}
print(s)
[0, 1, 4, 9, 16, 25, 36, 49, 64, 81]
{0, 1, 64, 4, 36, 9, 16, 49, 81, 25}