打开成绩文件scores.txt, 读取文件中的成绩,计算出平均成绩(保留两位小数),以及所有不及格的名单,保存到“不及格人员名单.txt”
时间: 2025-01-01 22:38:30 浏览: 14
要在Python中完成这个任务,你需要先打开名为`scores.txt`的成绩文件,假设该文件是以逗号分隔值(CSV)或者换行分隔每个学生的分数,然后逐行读取数据,计算平均成绩,并筛选出不及格的学生。这里是一个简单的示例代码:
```python
# 打开并读取成绩文件
with open('scores.txt', 'r') as file:
# 分割每行数据,假设每个学生一行,分数在第二列
scores = [float(line.split(',')[1]) for line in file]
# 计算平均成绩
average_score = sum(scores) / len(scores)
average_score_rounded = round(average_score, 2)
# 设置不及格标准(例如60分为及格)
passing_grade = 60
# 筛选不及格名单
below_passing = [student for student in scores if student < passing_grade]
incomplete_list = ['Student ' + str(i+1) for i, score in enumerate(below_passing)] # 用学生编号代替真实姓名
# 将不及格名单保存到文本文件
with open('不及格人员名单.txt', 'w') as f:
f.write('不及格人员名单:\n')
f.write('\n'.join(incomplete_list))
print(f"平均成绩:{average_score_rounded}")
```
请注意,上述代码假设`scores.txt`中没有包含标题行。如果实际文件格式不同,比如每个学生的信息不是单独一行,或者字段分隔符不是逗号,你需要相应调整代码以适应实际情况。
阅读全文