将学生的名字和每次作业的分数一次存到 lab_grade.txt 里,存储格式为:每 行一个记录,以逗号进行分割,如: • yh,100 • yh,99 • zmy,100 • yh,96 • zmy,100 • 读取该文件,记录同一个学生的所有作业分数和提交作业次数,计算学生的平均分 数,并将其姓名,总分数,提交次数,平均分数保存到 lab_final_grade.txt 中。
时间: 2024-02-06 12:09:41 浏览: 79
以下是 Python 代码实现:
```python
# 读取 lab_grade.txt 文件
with open("lab_grade.txt", "r") as f:
lines = f.readlines()
# 将每个学生的分数存储到字典中
grades = {}
for line in lines:
name, score = line.strip().split(",")
if name not in grades:
grades[name] = {"total": 0, "count": 0}
grades[name]["total"] += int(score)
grades[name]["count"] += 1
# 计算每个学生的平均分数,并保存到 lab_final_grade.txt 文件中
with open("lab_final_grade.txt", "w") as f:
for name, info in grades.items():
average = info["total"] / info["count"]
f.write(f"{name},{info['total']},{info['count']},{average}\n")
```
以上代码会将所有的学生分数存储到一个字典中,字典的键为学生姓名,值为该学生的总分数和提交作业次数。然后遍历字典,计算每个学生的平均分数,并将姓名、总分数、提交次数、平均分数保存到 lab_final_grade.txt 文件中。
阅读全文