python集合优势_python 集合使用案例:选修课统计

本学期学校共开设了3门选修课,一个班有25位学生,选修的情况如下:

选修1号课程的同学有:

set1 = {'张三', '李四', '王五', '马六', '赵七', '钱八'}

选修2号课程的同学有:

set2 = {'姬一', '孙必', '周冲', '王五', '方向', '张玉'}

选修3号课程的同学有:

set3 = {'刘玉', '王五', '方向', '孙身', '陈红', '马六'}

请编写程序解决以下问题:

这个班有多少位学生没有选课?

set = set1 | set2 | set3

num = 25 - len(set)

print("有多少位同学没有选课:")

print(num)

有多少位学生同时选修了3门课?

setall = set1 & set2 & set3

print("有多少位同学选了三门课:")

print(len(setall))

有多少位学生同时选修了2门课?(不包含选3门的)

settwo=(set1&set2)|(set1&set3)|(set2&set3)

print("有多少位同学选了二门课:")

print(len(settwo)-len(setall))

有多少位学生同时选修了一门课?

print("有多少位同学选了一门课:")

print(len(set)-len(settwo))

125jz网原创文章。发布者:江山如画,转载请注明出处:http://www.125jz.com/4643.html

  • 11
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值