从一个文本文件内( grade.txt)读入任意多个学生的分数,求出最高分,最低分 和平均分存入文件result.txt内。 【输入形式】 一个文件,文件中分数之间由换行隔开,输入的文件名为grade.txt。 输入的分数都是整数。
时间: 2024-02-24 16:59:39 浏览: 60
好的,你可以使用以下 Python 代码实现:
```python
# 读取文件中的分数
with open('grade.txt', 'r') as f:
grades = [int(line.strip()) for line in f.readlines()]
# 计算最高分、最低分和平均分
max_grade = max(grades)
min_grade = min(grades)
avg_grade = sum(grades) / len(grades)
# 将结果写入文件
with open('result.txt', 'w') as f:
f.write(f'最高分:{max_grade}\n')
f.write(f'最低分:{min_grade}\n')
f.write(f'平均分:{avg_grade:.2f}\n')
```
你只需要将上述代码保存为一个 Python 脚本,然后将名为 `grade.txt` 的文件放在同一目录下,运行脚本即可。脚本会自动读取文件中的分数,计算出最高分、最低分和平均分,并将结果写入名为 `result.txt` 的文件中。
相关问题
【问题描述】 从一个文本文件内(grade.txt)读入任意多个学生的分数,求出最高分,最低分 和平均分存入文件result.txt内。
好的,我知道了你的问题。这个问题可以通过以下方式解决:
1. 打开文件 `grade.txt`,读入所有学生的分数,并统计最高分、最低分和总分数。
2. 计算平均分。
3. 打开文件 `result.txt`,将最高分、最低分和平均分写入文件内。
这是一个可能的 Python 代码实现:
```python
# 读取 grade.txt 文件
with open("grade.txt", "r") as f:
grades = [int(line.strip()) for line in f.readlines()]
# 计算最高分、最低分和总分数
highest = max(grades)
lowest = min(grades)
total = sum(grades)
# 计算平均分
average = total / len(grades)
# 将结果写入 result.txt 文件
with open("result.txt", "w") as f:
f.write(f"Highest score: {highest}\n")
f.write(f"Lowest score: {lowest}\n")
f.write(f"Average score: {average}\n")
```
这个代码会将最高分、最低分和平均分写入 `result.txt` 文件中。当然,你可以根据需要修改文件名或路径。
问题描述】 从一个文本文件内(grade.txt)读入任意多个学生的分数,求出最高分,最低分 和平均分存入文件result.txt内。 【输入形式】 一个文件,文件中分数之间由换行隔开,输入的文件名为grade.txt。 输入的分数都是整数。 【输出形式】 计算出grade.txt中所有分数的最高分,最低分和平均分并分3行存入 result.txt的文件内。平均分保留1位小数。
好的,根据你的要求,这里是一个更新过的 Python 代码实现:
```python
# 读取 grade.txt 文件
with open("grade.txt", "r") as f:
grades = [int(line.strip()) for line in f.readlines()]
# 计算最高分、最低分和总分数
highest = max(grades)
lowest = min(grades)
total = sum(grades)
# 计算平均分
average = round(total / len(grades), 1)
# 将结果写入 result.txt 文件
with open("result.txt", "w") as f:
f.write(f"{highest}\n{lowest}\n{average}")
```
这个代码会将最高分、最低分和平均分写入 `result.txt` 文件中,每个值占一行。平均分保留一位小数。
阅读全文