一、集合概述
底层也是hash表的数据结构,集合中的元素不能重复,重复元素会自动去除。
二、集合的创建
三、集合的相关操作
1、增加操作
# 集合的创建
t1={10,20,30,40,50}
t1.add(60) #add一次添加一个元素
print(t1)
# t1.update({70,80,90})和t1.update((70,80,90))也可以新增元素
t1.update([70,80,90])
print(t1)
#结果
{40, 10, 50, 20, 60, 30}
{70, 40, 10, 80, 50, 20, 90, 60, 30}
2、删除操作
t1.remove(10)
print(t1)
# t1.remove(100) 移除没有的元素,出现报错,而使用discard没有报错
t1.discard(20)
t1.discard(100)
print(t1)
四、集合之间的关系
举例:
s1={10,20,30,40,50,60,70}
s2={10,20,30,}
s3={10,20,80}
s4={100,200,300}
print(s1.issubset(s2)) #s1是s2的子集吗?结果为false
print(s1.issubset(s3))
print(s2.issubset(s1)) #s2是s1的子集吗?结果为true
print(s1.issuperset(s2)) #s1是s2的超集吗?结果为true
print(s2.isdisjoint(s3)) #s2与s3没有交集吗?结果为false
print(s2.isdisjoint(s4)) #s2与s4没有交集吗?结果为true
五、集合的数据操作
基础知识:
举例:
#集合的数学操作
s1={10,20,30,40}
s2={20,30,40,50,60}
#交集 intersection与&等价,都是交集操作
print("交集:")
print(s1.intersection(s2))
print(s1 & s2)
#并集 union与|等价,都是并集操作,取并去掉重复元素
print("并集:")
print(s1.union(s2))
print(s1 | s2)
#差集 difference与-等价
print("差集:")
print(s1.difference(s2))
print(s1 - s2)
#对称差集 symmetric_difference与^等价
print("对称差集:")
print(s1.symmetric_difference(s2))
print(s1^s2)
结果如下: