python读取txt文件,期末考试后可以录入多个学生成绩(科目自定)存入文件,补考后如果成绩及格,将文件中学生成绩更新为补考成绩
时间: 2023-06-17 08:03:35 浏览: 197
用机器学习的方法对学生成绩进行统计分析和预测。包括决策树算法、逻辑回归算法、随机森林算法等,用python.zip
5星 · 资源好评率100%
可以使用Python内置的文件操作功能来实现读取和更新txt文件。下面是一个简单的例子:
首先,我们需要创建一个txt文件来存储学生成绩,可以使用以下代码:
```python
# 创建一个空的txt文件
with open('student_scores.txt', 'w') as file:
file.write('')
```
然后,我们可以编写一个函数来录入学生成绩并将其存储到文件中:
```python
def save_scores():
# 打开文件,以追加模式写入
with open('student_scores.txt', 'a') as file:
# 输入学生姓名和成绩
name = input('请输入学生姓名:')
score = input('请输入学生成绩:')
# 将学生姓名和成绩以逗号分隔写入文件中
file.write(name + ',' + score + '\n')
```
现在我们可以调用 `save_scores` 函数来录入学生成绩,并将其保存到文件中。
当学生参加补考并及格后,我们可以编写另一个函数来更新文件中的学生成绩:
```python
def update_scores():
# 读取文件中的所有行
with open('student_scores.txt', 'r') as file:
lines = file.readlines()
# 循环处理每一行,将补考成绩更新到文件中
with open('student_scores.txt', 'w') as file:
for line in lines:
# 用逗号分隔学生姓名和成绩
name, score = line.strip().split(',')
# 如果学生成绩低于60分,并且补考成绩高于等于60分,则更新成绩
if float(score) < 60:
new_score = input('请输入{}的补考成绩:'.format(name))
if float(new_score) >= 60:
score = new_score
# 将学生姓名和成绩以逗号分隔写入文件中
file.write(name + ',' + score + '\n')
```
现在我们可以调用 `update_scores` 函数来更新文件中的学生成绩。这个函数会提示用户输入每个及格的学生的补考成绩,并将补考成绩更新到文件中。
注意:这个例子中使用了简单的逗号分隔符来分隔学生姓名和成绩,实际应用中可能需要更复杂的数据格式或处理方式。
阅读全文