后端开发
·2 天前Day 8
🧭行动:学习了新的数据容器集合(set)
🤓体会:这里的集合就和数学中的集合很像了。集合是可变无序,元素唯一,不可哈希元素不能存储
🧑💻代码:
#集合的定义
# si = {1,2,3,44,35,34,65,44}
# print(si)
#输出结果的顺序随机
# print(type(si))
# so = set()
# print(so, type(so))
# s1 = {11,21,23,43,45,56,76,78,98}
# #添加指定元素
# s1.add(10)
# print(s1)
# #删除指定元素
# s1.remove(11)
# print(s1)
# #删除随机元素并返回
# e = s1.pop()
# print(e)
# print(s1)
# #删除集合
# s1.clear()
# print(s1)
#
# s2 = {"A","D","A","W","H","F","I"}
# s3 = {"F","J","T","S","W"}
# #输出差集,前者有后者没有的集合
# print(s2.difference(s3))
# print(s3.difference(s2))
# #输出两个集合的并集
# print(s2.union(s3))
# print(s3.union(s2))
# #输出两个集合的交集
# print(s2.intersection(s3))
# print(s3.intersection(s2))
#选修足球的学生名单
football_set = {"王林", "曾牛", "徐立国", "遁天", "天运子", "韩立", "厉飞雨","乌丑","紫灵"}
#选修篮球的学生名单
basketball_set = {"张铁", "墨居仁","王林", "姜老道", "曾牛", "王蝉", "韩立", "天运子", "李化元", "厉飞雨", "云露"}
# 选修法语学生名单
french_set = {"许木", "王卓", "十三", "虎咆", "姜老道", "天运子", "红蝶", "厉飞雨", "韩立", "曾牛"}
# 选修艺术学生名单
art_set = { "遁天", "天运子", "韩立", "虎咆", "姜老道", "紫灵"}
#方法一
# fa_set = french_set.intersection(art_set)
# print("同时选修法语和艺术的学生:",fa_set)
#方式二,&替代
fa_set = french_set & art_set
print("同时选修法语和艺术的学生:",fa_set)
all_set = football_set & basketball_set & french_set & art_set
print("同时选修四门课程的学生:",all_set)
#方法一
# fb_set = football_set.difference(basketball_set)
# print("选修足球且没有选修篮球的学生:",fb_set)
#方法二:“-” 用来求差集
# fb_set = football_set - basketball_set
# print("选修足球且没有选修篮球的学生:",fb_set)
#方法三:集合表达式
fb_set = {s for s in football_set if s not in basketball_set}
print("选修足球且没有选修篮球的学生:",fb_set)
#并集:“|”
all_set2 = football_set | basketball_set | french_set | art_set
all_list =[*football_set,*basketball_set,*french_set,*art_set,*fa_set]
for i in all_list:
print(f"{i} 选修了 {all_list.count(i)} 门课")
2
1
分享
操作
评论
问答助学
相关内容
0个评论
全部评论
点击登录,快来和大家讨论吧~
表情
图片
暂无评论
