txt文本(包括学号 姓名 性别 数学 英语 Python)求总分并同步到原来的txt文本
时间: 2024-03-20 14:41:26 浏览: 22
好的,那么假设你的txt文本里面的数据格式如下所示:
```
学号 姓名 性别 数学 英语 Python
001 张三 男 80 90 95
002 李四 女 85 88 92
003 王五 男 90 92 88
```
你可以使用Python的文件读写操作来实现这个功能。具体的代码如下:
```python
# 读取原始数据
with open('student.txt', 'r') as f:
lines = f.readlines()
# 计算总分并更新数据
for i, line in enumerate(lines):
if i == 0:
# 如果是第一行,直接添加总分列的列名
line = line.strip() + ' 总分\n'
else:
# 否则,计算总分并添加到该行的最后一列
scores = line.strip().split(' ')[3:]
total_score = sum(map(int, scores))
line = line.strip() + ' {}\n'.format(total_score)
lines[i] = line
# 将更新后的数据写回原始文件
with open('student.txt', 'w') as f:
f.writelines(lines)
```
运行上述代码后,原始的txt文本将被更新,并且每一行的最后一列会添加一个总分。注意,上述代码中假设每一行数据之间是以空格分隔的,如果实际情况中使用的是其他分隔符,需要根据实际情况进行修改。