当前位置: 首页 > news >正文

py列表小练习:成绩统计程序一些数据容器的小练习

编程练习题:学生成绩统计系统

题目描述:

请编写一个学生成绩统计程序,实现以下功能:

  1. 循环接收用户输入的学生成绩(整数),输入q时结束输入;
  2. 输入过程中如果输入非数字(且不是q),提示 “输入格式错误,请重新输入!”;
  3. 输入结束后,统计并输出以下信息:
    • 输入的所有成绩列表
    • 总人数
    • 平均成绩
    • 最高分
    • 最低分
    • 合格人数(成绩≥60 分)
    • 优秀人数(成绩≥85 分)
    • 优秀率(优秀人数 / 总人数 ×100,保留 2 位小数)
输入要求
  • 成绩为整数,范围不限(无需校验成绩是否在 0-100 之间);
  • 结束输入的标识为小写字母q(输入大写Q无需处理,按格式错误提示);
  • 输入时忽略首尾空格(例如输入90视为有效输入,转换为 90)。

写好了吗?写好了再看哦~

#————————————成绩统计程序(列表小练习)—————————————————— print('请输入学生成绩,结束请输入‘q’: ') scores=[ ] while True: use_input=input().strip() if use_input=='q': print('输入结束') break try: score=int(use_input) scores.append(score) except ValueError: print('输入格式错误,请重新输入!') print('您输入的成绩是',scores) #总人数 total=len(scores) # 总人数最高分 max_score = max(scores) # 最低分 min_score = min(scores) pas=0 #记录合格人数 excl=0 #记录优秀人数 for score in scores: if score>=60: pas+=1 if score>=85: excl+=1 # 优秀率 rate=excl/total*100 # 平均成绩 avg=sum(scores)/total print(f'总人数为:{total}') print(f'平均成绩:{avg}') print('最高分是', max_score) print('最低分是' , min_score) print('合格人数:',pas) print('优秀人数:',excl) print('优秀率:',rate)

编程练习题:数据容器综合练习

练习一:水果价格统计
题目描述:

给定一个存储水果名称和单价的字典,实现以下功能:

  1. 遍历并打印所有水果的名称;
  2. 找出字典中单价最高的水果,并输出其名称和价格(保留 1 位小数)。
给定字典
fruits = { '苹果': 4.5, '香蕉': 3.2, '西瓜': 5.8 }
输出示例
苹果 香蕉 西瓜 最贵的水果是:西瓜,它的价格是:5.8元一斤
解题提示
  • 遍历字典默认获取(水果名称);
  • 使用max(字典, key=字典.get)可根据值找到对应的键,是字典常用技巧。

练习二:学生成绩分析
题目描述:

给定一个嵌套字典的学生成绩列表,实现以下功能:

  1. 遍历每个学生,计算其语文、数学、英语三科的平均分(保留 1 位小数)并输出;
  2. 计算每个学生的总分,找出总分最高的学生(支持多人同分最高),输出其姓名列表和总分。
给定列表:
students = [ { 'name':'张三', 'scores':{'语文':88,'数学':92,'英语':95} }, { 'name':'李四', 'scores':{'语文':75,'数学':83,'英语':80} }, { 'name':'王五', 'scores':{'语文':92,'数学':95,'英语':88} } ]
输出示例
张三的平均成绩是: 91.7 李四的平均成绩是: 79.3 王五的平均成绩是: 91.7 总分最高的学生是['张三', '王五'],他的总分是275
解题提示
  • 嵌套字典取值:stu['scores'].values()可获取某学生所有科目成绩;
  • 处理 “多人同分最高” 需用列表存储姓名,通过判断总分与当前最高分的关系更新列表。

练习三:评论内容处理
题目描述

给定一段评论字符串,完成以下 3 个需求:

  1. 统计字符串中 “好喝” 出现的次数并输出;
  2. 将字符串中的 “贵” 替换为 “略高”,输出替换后的完整评论;
  3. 判断字符串是否包含 “推荐” 二字,输出对应的提示信息。
给定字符串
comment = "这家奶茶真好喝,环境也不错,就是价格有点贵,好喝好喝好喝!强烈推荐!"
输出示例
4 这家奶茶真好喝,环境也不错,就是价格有点略高,好喝好喝好喝!强烈推荐! 该评论里有‘推荐’两个字
解题提示
  • 字符串count(子串)可统计子串出现次数;
  • 字符串replace(旧子串, 新子串)可替换指定内容;
  • 判断是否包含子串也可直接用if '推荐' in comment:,更简洁。

数据容器小练习代码答案(自己编写的,新手如果有冗余什么的,欢迎评论区指正):

————————————————————数据容器小练习—————————————— #练习一 买水果 fruits={ '苹果':4.5, '香蕉':3.2, '西瓜':5.8 } for fruit in fruits: print(fruit) # 找最贵的水果 item=max(fruits,key=fruits.get) #字典取出键值的很重要的方法 print(f'最贵的水果是:{item},他的价格是:{fruits[item]}元一斤') #练习二:学生成绩表 students =[ { 'name':'张三', 'scores':{'语文':88,'数学':92,'英语':95} }, { 'name':'李四', 'scores':{'语文':75,'数学':83,'英语':80} }, { 'name':'王五', 'scores':{'语文':92,'数学':95,'英语':88} }] #计算平均分 flag=-1 #记录最高分学生 list_a=[] # 用于接收相同的分数最高的学生 names='' for stu in students: score=stu['scores'].values() avg=sum(score)/len(score) print(f'{stu['name']}的平均成绩是: {avg: .1f}') #找到总分最高的学生 根据scores 找到name a=sum(score) #计算总分 if a>flag: flag=a #找到总分最高的scores list_a=[stu['name']] elif a==flag: list_a.append(stu['name']) print(f'总分最高的学生是{list_a},他的总分是{flag}') #练习三:评论内容 comment="这家奶茶真好喝,环境也不错,就是价格有点贵,好喝好喝好喝!强烈推荐!" #需求1:统计“好喝”出现次数 print(comment.count('好喝')) #需求2:将字符串中的“贵”替换为“略高” print(comment.replace('贵','略高')) #需求3:是否包含“推荐”两个字 if comment.count('推荐')==0: print('该评论里没有‘推荐’两个字') else: print('该评论里有‘推荐’两个字')

🎊如果你已经完成这个小练习,恭喜你到达练气三阶!🎊

请宿主继续加油!

http://www.jsqmd.com/news/497845/

相关文章:

  • 鸿翼OpenContent AI 高质量数据集平台,赋能企业抢占智能时代“数据高地”
  • Pytest finalizer执行顺序揭秘
  • 【量化工具推荐】2026年期货量化实盘前验证平台排名
  • 迭代器模式:优雅遍历的艺术
  • 网络安全岗位薪水多少?
  • 深度学习视觉:语义分割核心技术解析
  • 六轴机器人仿真:轨迹规划全解析
  • OPM 知识图谱动态化实战教程(非常详细),构建语义世界模型从入门到精通,收藏这一篇就够了!
  • 平台政策收紧:TRO之外,卖家还可能面临哪些平台附加处罚?
  • 2026年2月亲测:清洁拖把实践分享
  • 接口测试需要注意的一些BUG
  • Windows间接显示驱动开发指南
  • 红黑树:高效平衡的奥秘
  • 算法设计与分析-习题6.5
  • ReACT Agent实战:从理论到落地的全流程指南
  • 光伏储能虚拟同步发电机Simulink仿真模型探索
  • Python核心控制结构全解析
  • 目标检测:从传统到Transformer的进化
  • 黄仁勋GTC 2026演讲对GPU算力租用的用户有何影响
  • 软件测试入门:从理论到实践(基础3)
  • LoRa温湿度在线监测系统方案
  • 每日一个知识点 Day01:什么是 IO 多路复用?
  • AI Agent测试避坑指南:如何用“静态分析”消灭“幻觉”?建议收藏!
  • 3D Tiles 2.0 技术审查整理稿
  • APP安卓手机
  • 黄仁勋2026GTC演讲:推理时代到来,2026年Groq芯片(B300),龙虾是新操作系统
  • 网络安全干货指南:从入门到实战的全面解析
  • 观察者模式:解耦依赖的优雅方案
  • Nginx与Tomcat集成:实现Java Web项目反向代理
  • 企业级AI图像生成:Bedrock+Slack实战