恒美微站 Logo 恒美微站
  • 首页
  • 关于我们
  • 建站服务
  • 主题模板
  • 案例展示
  • 资讯中心
  • 联系我们

python实战练习

  • 首页
  • 资讯中心
  • /
  • python实战练习

相关资讯

playcurlNEXT常见问题解答:解决指纹更新失败、兼容性等10大痛点 2026/8/2 19:10:27
穿越时光.云养公益平台小程序 2026/9/29 19:25:48
dotfiles44/dotfiles装机必备:20个命令行工具推荐与使用技巧 2026/8/2 19:10:28

最新资讯

superpowers实战:用技能编排重塑Codex CLI的多步骤AI编程流程
AI Engineering from Scratch:构建可交付、可运维的生产级AI系统
Java实现个性化影片推荐系统:UserCF协同过滤与标签加权融合
Superpowers:开源的浏览器2D游戏引擎,用TypeScript实现实时协作开发
10X Visium空间转录组学全流程实战:从芯片原理到Seurat分析避坑指南
Java+JSP+MySQL学生作品展示系统:从建库到部署的完整落地路径

今日推荐

开源模型端侧落地实战:量化、推理加速与Agent上下文管理
AI Evals实战指南:从零搭建LLM应用评估体系与CI/CD集成
Java采购管理系统实战:从数据库设计到事务一致性

本周热门

从像素到笔画:srt-whiteboard-animation骨架笔迹追踪实现(Zhang-Suen细化+8邻接追踪)
网站建设的英语怎么说?别只背单词,看完这套安全完整流程才敢上线
新手入门看这篇:建设网站加盟避坑指南与SEO实操

本月精选

自研推理加速器Redwood:两周内实现PyTorch模型高效部署的实战教程
V4L2摄像头采集实战:从camera_client.rar到出图全流程解析
从“谁发明了钢琴键”到知识问答智能体:RAG与记忆工程实践

python实战练习

发布时间:2026/9/29 19:26:35
python实战练习 # 班级成绩数据管理系统 - 数学老师专用# 初始化学生数据字典列表结构id唯一标识scores存储多门成绩整数列表students [{id: 1, scores: [85, 90, 88]},{id: 2, scores: [79, 82, 91]},{id: 3, scores: [95, 89, 92]},{id: 4, scores: [68, 75, 80]},{id: 5, scores: [92, 88, 95]}]# 辅助函数根据id查询学生返回学生字典或None复用逻辑def get_student(target_id):for student in students:if student[id] target_id:return student # 找到目标学生返回其字典return None # 遍历结束未找到返回None# 功能1查看所有学生成绩def show_students():print(所有学生成绩)for student in students:# 直接输出id和成绩列表不拼接字符串print(id:, student[id], 成绩:, student[scores])# 功能2添加新学生def add_student():# 输入新学生id直接转为整数new_id int(input(请输入新学生id整数))# 调用辅助函数检查id是否已存在if get_student(new_id) is not None:print(id已存在添加失败)return # id重复终止函数# 输入成绩数量至少1个score_count int(input(请输入成绩数量整数至少1))new_scores []# 循环输入对应数量的成绩for i in range(score_count):score int(input(f请输入第{i1}门成绩整数))new_scores.append(score)# 创建新学生字典并添加到列表new_student {id: new_id, scores: new_scores}students.append(new_student)print(添加成功)# 功能3修改学生成绩def modify_student():# 输入要修改的学生idmodify_id int(input(请输入要修改的学生id整数))# 调用辅助函数查找学生target_student get_student(modify_id)if target_student is None:print(未找到该学生修改失败)return # 未找到学生终止函数# 输入新的成绩数量和成绩new_score_count int(input(请输入新的成绩数量整数))new_scores []for i in range(new_score_count):score int(input(f请输入第{i1}门新成绩整数))new_scores.append(score)# 替换原成绩列表target_student[scores] new_scoresprint(修改成功)# 功能4删除学生def delete_student():# 输入要删除的学生iddelete_id int(input(请输入要删除的学生id整数))# 调用辅助函数查找学生target_student get_student(delete_id)if target_student is None:print(未找到该学生删除失败)return # 未找到学生终止函数# 从列表中删除目标学生字典students.remove(target_student)print(删除成功)# 功能5成绩统计分析4项核心统计def analyze_scores():# 1. 统计班级总人数total_students len(students)print(成绩统计分析)print(1. 班级总人数, total_students)# 计算每个学生的总分存入总分列表为后续统计准备total_scores []id_total_list [] # 存储(id, 总分)元组用于排名for student in students:student_total sum(student[scores])total_scores.append(student_total)id_total_list.append((student[id], student_total))# 2. 计算平均总分保留1位小数if total_students 0:print(2. 平均总分无数据班级无学生)else:average_total sum(total_scores) / total_studentsprint(2. 平均总分, round(average_total, 1))# 3. 查找最高分学生处理无学生的边界情况if total_students 0:print(3. 最高分学生无数据班级无学生)else:max_total max(total_scores)print(f3. 最高分学生总分{max_total})# 遍历找到所有总分等于最高分的学生for student in students:if sum(student[scores]) max_total:print( id, student[id], 总分, sum(student[scores]), sep)# 4. 按总分从高到低排名if total_students 0:print(4. 按总分排名无数据班级无学生)else:# 对(id, 总分)元组列表排序key指定按总分排序reverseTrue表示降序sorted_list sorted(id_total_list, keylambda x: x[1], reverseTrue)print(4. 按总分排名)# 用enumerate获取排名从1开始for rank, (student_id, total) in enumerate(sorted_list, start1):print(f 排名{rank}id{student_id}总分{total})# 主菜单交互框架def main():while True:# 打印固定菜单字符串常量print(班级成绩管理系统1. 查看所有学生成绩2. 添加新学生3. 修改学生成绩4. 删除学生5. 成绩统计分析6. 退出系统)# 输入功能编号转为整数choice int(input(请输入功能编号1-6))# 根据选择调用对应功能if choice 1:show_students()elif choice 2:add_student()elif choice 3:modify_student()elif choice 4:delete_student()elif choice 5:analyze_scores()elif choice 6:print(系统退出再见)break # 终止循环退出程序else:print(输入错误请重新输入1-6的整数)# 程序入口执行主函数if __name__ __main__:main()# 知识点说明按使用频率排序# 1. 数据结构列表append/remove遍历、字典键值访问、元组存储id与总分# 2. 控制流while循环主菜单循环、for循环遍历学生/成绩、if-elif-else条件判断、break退出循环# 3. 函数自定义函数功能拆分、函数调用复用逻辑、lambda匿名函数sorted排序key# 4. 内置函数len统计列表长度、sum计算成绩总和、max找最高分、sorted排序、round保留小数、enumerate获取排名# 5. 输入输出input获取用户输入、print输出内容支持多参数、int输入转整数# 6. 运算符算术运算符/除法、加法、比较运算符判断相等、赋值运算符赋值代码运行结果

关于恒美微站

恒美微站专注于为个体商户、工作室提供极简自助建站服务,让每个人都能轻松拥有专业网站。

快速链接

  • 关于我们
  • 建站服务
  • 主题模板
  • 案例展示
  • 资讯中心

服务项目

  • 可视化建站
  • 拖拽编辑
  • 主题定制
  • SEO 优化
  • 网站托管

联系方式

  • 📍 地址:北京市朝阳区建国路 88 号
  • 📞 电话:400-888-8888
  • ✉️ 邮箱:info@hmyw.cn
  • 🕐 时间:周一至周日 9:00-18:00

© 2024 恒美微站 hmyw.cn 版权所有 | 京 ICP 备 12345678 号