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

如何累加输入的学生分数后除以计数得到平均值(Python实现问题)

计算班级测验平均分的代码调整方案

现有代码问题

原代码无法实现分数累加的核心原因是:

  • 存储分数的变量被定义在收集成绩的for循环内部,每次循环都会被重置,结束后仅保留最后一名学生的成绩
  • 变量初始值被设为空字符串,不符合数值累加的类型要求

调整后可运行代码

print('Lets get a class average of yesterdays quiz.')
students=['Mary','Edith','Sybil','Matthew','Tom']
# 初始化总分累加变量,放在循环外避免被重置
total_score = 0
for student in students:
    print(student,'What was your score?')
    current_score = int(input('My score was a '))
    total_score += current_score

print('Great.')

# 保留原需求要求的单独for循环统计学生人数
count=0
for itervar in ['Mary','Edith','Sybil','Matthew','Tom']:
    count=count+1
print('Number of scores:',count)

# 计算并输出平均分
average = total_score / count
print(f'班级测验平均分为:{average:.2f}')

关键修改说明

  • 将总分累加变量total_score移到第一个for循环外部,初始值设为数值0,避免每次循环被重置
  • 每次收集到学生输入的成绩后,直接累加到total_score变量中
  • 统计完学生总人数后,用总分除以总人数得到平均分,示例中保留2位小数展示结果

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.03 11:54:03