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

如何使用Python读取文本文件中的分数并计算平均分?

Python实现跳过非数字行计算分数平均分方案

核心思路是逐行读取文件内容,通过异常捕获机制过滤无法转换为数字的行,自动统计所有有效分数后计算平均分,无需提前预设分数数量。

完整实现代码

# 此处修改为你的实际文件路径
FILE_PATH = "score.txt"
valid_scores = []

# 用上下文管理器读取文件,自动处理资源释放
with open(FILE_PATH, "r", encoding="utf-8") as file:
    for line in file:
        # 去除每行首尾的换行符、空格等空白字符
        processed_line = line.strip()
        # 跳过空行
        if not processed_line:
            continue
        try:
            # 尝试转换为整数,转换成功即为有效分数
            current_score = int(processed_line)
            valid_scores.append(current_score)
        except ValueError:
            # 转换失败是非数字行,直接跳过不处理
            continue

# 避免无有效分数时触发除以0报错
if valid_scores:
    sum_score = sum(valid_scores)
    count = len(valid_scores)
    avg_score = sum_score / count
    print(f"有效分数数量:{count},总分:{sum_score},平均分:{avg_score:.2f}")
else:
    print("未在文件中检测到有效数字分数")

方案特性

  • 自动适配任意数量的分数,不管文件长度怎么变都可以正常运行
  • 不限制非数字行的位置,哪怕非数字行出现在中间、末尾都可以正确过滤
  • 额外处理了空行场景,避免空行导致的异常
  • 自带除以0防护,文件无有效分数时不会报错

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.29 11:57:04