python从一个文本文件内读入任意多个学生的分数(都是整数),求出最高分,最低分和平均分存入文件result.txt内。 【输入形式】 一个文件,文件中分数之间由换行隔开,输入的文件名为grade.txt。输入的分数都是整数。 【输出形式】 计算出grade.txt中所有分数的最高分,最低分和平均分并分3行存入result.txt的文件内。平均分保留1位小数
时间: 2024-02-01 13:14:27 浏览: 144
用Python编程实现学生成绩管理,能按学期、按班级对学生成绩进行录入、修改、统计、查询和输出
你可以使用以下代码来解决这个问题:
```python
# 打开输入文件
with open('grade.txt', 'r') as f:
lines = f.readlines()
# 将每个分数转换为整数
scores = [int(line.strip()) for line in lines]
# 计算最高分、最低分和平均分
highest = max(scores)
lowest = min(scores)
average = sum(scores) / len(scores)
# 将结果写入输出文件
with open('result.txt', 'w') as f:
f.write(str(highest) + '\n')
f.write(str(lowest) + '\n')
f.write('{:.1f}'.format(average) + '\n')
```
上述代码首先打开输入文件 `grade.txt`,读取每一行分数,将其转换为整数后存储在 `scores` 列表中。然后,使用内置函数 `max`、`min` 和 `sum` 分别计算最高分、最低分和总分,再除以分数总数得到平均分。最后,将结果写入输出文件 `result.txt`。其中,`'{:.1f}'.format(average)` 表示将平均分保留 1 位小数后转换为字符串。
阅读全文