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

如何在Python代码中计算并显示最大均值?

修改后的代码实现

要实现同时输出每组均值和所有均值的最大值,我们需要先把每组的均值和对应名字存储起来,遍历完所有数据后再找出最大值。修改后的代码如下:

import csv
from statistics import mean

# 存储每个名字与对应均值的列表
average_records = []

with open("numbers.csv") as f:
    reader = csv.reader(f)
    for row in reader:
        name = row[0]
        # 用列表推导式简化成绩转换代码
        these_grades = [int(grade) for grade in row[1:]]
        avg = mean(these_grades)
        print("average of %s is %f" % (name, avg))
        # 将当前记录存入列表
        average_records.append((name, avg))

# 找出均值最大的记录,以元组第二个元素(均值)为判断依据
max_avg_record = max(average_records, key=lambda x: x[1])
print("\n最高均值是:%s 的 %f" % (max_avg_record[0], max_avg_record[1]))

改动说明

  • 新增average_records列表,用来保存所有学生的名字和对应均值,为后续找最大值提供数据基础。
  • 将原循环生成成绩列表的代码简化为列表推导式,减少冗余代码,提升可读性。
  • 遍历过程中保留原有的单组均值打印逻辑,同时把记录存入列表。
  • 循环结束后,用max()函数结合lambda表达式,快速定位均值最大的记录并打印。

运行结果

执行代码后会先输出每个学生的均值,再输出所有均值中的最大值:

average of arad is 19.000000
average of sara is 17.000000
average of mahdi is 14.000000
average of saber is 14.250000
average of adel is 16.500000

最高均值是:arad 的 19.000000

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.05 06:20:42