集合的【交集】、【并集】、【差集】

目录

认识[交集]、[并集]、[差集]

#交集:取两个集合公共的元素            &/intersection

#并集:取两集合的全部元素              |/union

#差集:取一个集合中另一个集合没有的元素   -/difference

【实际运用举例】

【题目】输入两个班级的学生姓名,打印重名的学生


认识[交集]、[并集]、[差集]

在使用集合的交集并集差集前,首先明确2个集合,之后再来举例

a={1,2,3,4}
b={3,4,5,6}

#交集:取两个集合公共的元素            &/intersection
print(a&b)                  #{3,4}
print(a.intersection(b))    #{3,4}

print(b&a)                  #{3,4}
print(b.intersection(a))    #{3,4}


#并集:取两集合的全部元素              |/union
print(a|b)                  #{1,2,3,4,5,6}
print(a.union(b))           #{1,2,3,4,5,6}

print(b|a)                  #{1,2,3,4,5,6}
print(b.union(a))           #{1,2,3,4,5,6}


#差集:取一个集合中另一个集合没有的元素   -/difference
print(a-b)                  #{1,2}
print(a.difference(b))      #{1,2}

print(b-a)                  #{5,6}
print(b.difference(a))      #{5,6}


【实际运用举例】

交集:在数据库或数据表中,交集的运用可以用来找到两个或多个查询结果集中的共同元素

并集:在数据库中,并集也常常被用于联合两个或多个表,以获得包含所有这些表中数据的更大的表。

差集:在关系型数据库中,差集可以用来查询两个表之间的差异,或者在一个表中找出另一个表中所没有的记录。

【题目】输入两个班级的学生姓名,打印重名的学生
#输入班级1的学生数量,存储至num1
num1 = int(input('输人班级1的学生数量:'))

class1=set()#初始化集合class1
#通过循环,输入班级1学生的姓名
for i in range(0, num1):
    name = input('输入学生%d姓名:'%(i+1))
    class1.add(name)#添加至集合class1
                 
#输入班级2的学生数量,存储至num2
num2 = int(input('输人班级2的学生数量:'))

class2 = set()#初始化集合class2
#通过循环,输入班级2学生的姓名

for i in range(0, num2):
    name = input('输入学生%d姓名:'%(i+1))
    class2.add(name)#添加至集合class2

#求出class1与class2的交集,存储至same
same = class1 & class2
                 
print("重名的学生:")
for name in same:
    print(name)#将重名的同学打印

  • 7
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值