You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何调试Python成绩录入计算代码?满足编程评估规范要求

调试Python成绩输入程序以满足评估要求

原代码已实现成绩存储、列表展示、总和与平均值计算功能,但缺少**成绩合法性校验(0-100范围)**和异常处理,以下是符合评估要求的修改方案:

修改后的完整代码

print("please enter your 5 marks below")

marksList = []
# 循环读取5个合法成绩
for i in range(5):
    while True:
        try:
            mark = int(input(f"enter mark {i+1}: "))
            # 验证成绩范围
            if 0 <= mark <= 100:
                marksList.append(mark)
                break
            else:
                print("Error: Mark must be between 0 and 100. Try again.")
        except ValueError:
            print("Error: Please enter a valid integer. Try again.")

# 显示输入的成绩列表
print(marksList)

# 计算总和与平均值
sumOfMarks = sum(marksList)
averageOfMarks = sumOfMarks / 5

# 格式化输出结果
print(f"The sum of your marks is: {sumOfMarks}")
print(f"The average of your marks is: {averageOfMarks:.2f}")

关键修改说明

  • 输入合法性校验:通过while True循环强制用户输入0-100之间的成绩,不符合要求时提示错误并重新输入
  • 异常处理:用try-except捕获非整数输入的情况,避免程序直接崩溃
  • 简化代码结构:用循环替代重复的5次输入代码,更简洁易维护
  • 优化输出格式:使用f-string替代字符串拼接,同时将平均值保留两位小数,输出更规范

对应评估要求的完成情况

  1. ✅ 读取5门科目成绩并存储在列表中(循环实现,结构更简洁)
  2. ✅ 确保成绩在0-100之间,同时处理非整数输入异常
  3. ✅ 显示输入的成绩列表
  4. ✅ 计算并按指定格式输出总和
  5. ✅ 计算并按指定格式输出平均值(优化为保留两位小数,更符合成绩展示习惯)

内容的提问来源于stack exchange,提问作者Requiem

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.13 10:30:53