新闻详情

新闻详情

首页 / 资讯中心 / 详情

Python学习记录13

发布时间:2026/9/6 4:56:02来源:尧图网络
Python学习记录13
以下是一个使用set及其基本操作解决的案例。目标根据提供的班级学生选课情况完成需求需求1找出同时选修法语和艺术的学生2找出同时选修四门课的学生3找出选修了足球但没有选修篮球的学生4统计每一个学生选修的课程数量代码如下#班级学生选课情况如下 #选修足球学生名单 football_set {张三,李四,王五,徐立国,王娇,王林,王卓} #选修篮球学生名单 basketball_set {张三,李四,王卓,徐立,张聪,林雪} #选修法语学生名单 french_set {徐立,张聪,王五,王娇,林雪,徐立国,张三,刘佳} #选修艺术学生名单 art_set {张三,王五,王娇,李四,林雪,徐立,张聪} #1.找出同时选修法语和艺术的学生名单 print(french_set.intersection(art_set)) #2.找出同时选修四门课的学生名单 print(football_set.intersection(basketball_set).intersection(french_set).intersection(art_set)) #3.找出选修了足球但没有选修篮球的学生名单 #思路一 fb_set football_set.difference(basketball_set) print(f选修了足球但没选修篮球的学生{fb_set}) #思路二 fb_set1 football_set - basketball_set print(f选修了足球但没选修篮球的学生{fb_set1}) #思路三 #利用集合推导式 fb_set2 {s for s in football_set if s not in basketball_set } print(f选修了足球但没选修篮球的学生{fb_set2}) #4.统计每个学生的选课数量 #(1). 获取学生名单 all_set football_set | basketball_set | french_set | art_set print(all_set) #(2).获取每一个学生选修的课程数量 all_list [*football_set,*basketball_set,*french_set,*art_set] print(all_list) for i in all_set: print(f{i}选修了{all_list.count(i)}门课程)在这个案例的完成中需求3用了三种思路都是非常不错的然而在完成需求4后我认为这个代码不够完善因为它只能生成选课学生选择的课程数量而无法展现他们都选择了哪些课程不够直观因此经过我和DeepSeek沟通后得到了更加完善的代码# 4.统计每个学生的选课数量并显示具体课程 # (1) 获取所有学生 all_set football_set | basketball_set | french_set | art_set # (2) 遍历每个学生判断其选修了哪些课 print(\n学生选课情况明细) for student in all_set: courses [] if student in football_set: courses.append(足球) if student in basketball_set: courses.append(篮球) if student in french_set: courses.append(法语) if student in art_set: courses.append(艺术) # 输出姓名、课程数量和课程列表 print(f{student} 选修了 {len(courses)} 门课程{、.join(courses)})这是针对需求4更加完善的代码以下是它的输出展示学生选课情况明细张三 选修了 4 门课程足球、篮球、法语、艺术李四 选修了 2 门课程足球、篮球王五 选修了 3 门课程足球、法语、艺术徐立国 选修了 2 门课程足球、法语王娇 选修了 3 门课程足球、法语、艺术王林 选修了 1 门课程足球王卓 选修了 2 门课程足球、篮球徐立 选修了 3 门课程篮球、法语、艺术张聪 选修了 3 门课程篮球、法语、艺术林雪 选修了 3 门课程篮球、法语、艺术刘佳 选修了 1 门课程法语这样的输出展示和优化前的版本对比一下就可以发现差异张三选修了4门课程王娇选修了3门课程李四选修了3门课程徐立国选修了2门课程王卓选修了2门课程徐立选修了3门课程王林选修了1门课程刘佳选修了1门课程张聪选修了3门课程林雪选修了3门课程王五选修了3门课程很明显优化前的代码简陋得多特此记录。
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

最新相关资讯

高校材料工艺实验室采购真空甲酸炉的深度分析与选型指南 2026/9/6 8:14:27

高校材料工艺实验室采购真空甲酸炉的深度分析与选型指南

在现代材料科学领域,真空甲酸炉扮演着至关重要的角色,特别是在高校材料工艺实验室中,它不仅是科研实验的核心设备,也是提升科研能力和实验效率的关键。本文将深入探讨高校材料工艺实验室采购真空甲酸炉的必要性,分析行…

阅读更多 →
三花聚顶旌旗副图指标源码解析与实战应用指南 2026/9/6 8:14:27

三花聚顶旌旗副图指标源码解析与实战应用指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

阅读更多 →
论文如何降低AI率又不让重复率反弹?万方双指标该怎样一起改? 2026/9/6 8:14:27

论文如何降低AI率又不让重复率反弹?万方双指标该怎样一起改?

论文如何降低AI率又不让重复率反弹?万方双指标该怎样一起改? 上周有个学妹拿着万方的两份报告来找我。她论文第一次送检,AIGC疑似度偏高,导师让她改。她照着网上说的办法改了三天,把长句拆成短句,把不常见…

阅读更多 →
DeepSeek API 接入翻译插件:实现网页、字幕、论文高质量翻译的完整指南 2026/9/6 8:14:27

DeepSeek API 接入翻译插件:实现网页、字幕、论文高质量翻译的完整指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

阅读更多 →
MiniMax-Music ComfyUI节点全解析:音乐生成工作流部署与API批量实践 2026/9/6 8:14:27

MiniMax-Music ComfyUI节点全解析:音乐生成工作流部署与API批量实践

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

阅读更多 →
国内有哪些ai产品? 2026/9/6 8:11:27

国内有哪些ai产品?

当前国内面向办公场景的AI产品数量较多,分属完全不同的产品形态。很多企业选型容易混淆问答工具、长文档工具和可执行任务的智能体平台,仅按知名度采购,上线后发现无法对接现有工作流、不能交付闭环成果。企业做产品发现,核心不是…

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞