定制软件文件内容读取成绩单,定制软件计算出平均分并且写入定制软件原文件存储
定制软件文件内容如下:( 格式参考下表, 内容自己定义)
姓名 语文 数学 英语
aaa 80 70 65
bbb 85 88 90
ccc 76 78 75
with open('D:\\studypython\\成绩单.txt','r',encoding='utf-8') as fp: s = fp.readline() #先读第一行的文字 s = s[0:-1]+' 平均分' t = fp.readlines() #再读名字和成绩 for stu in t: stu_grade = stu.split() a = int(stu_grade[1]) b = int(stu_grade[2]) c = int(stu_grade[3]) avg = (a+b+c)/len(t) # 计算个人总成绩的平均分 stu_grade.append(str(avg)) #将计算出来的平均成绩加入成绩单中 stu_grade_str = ' '.join(stu_grade)+'' #将成绩单从list转为str s = s + stu_grade_str #将成绩和科目文字连接 print(s) fp.close()with open('D:\\studypython\\成绩单.txt','w') as fp: fp.writelines(s) fp.close()
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
写入后记事本的内容如下图:
如果你在写的时候出现了以下错误,可以这样修改:
1.
可能你上一次修改记事本没有保存?你可以再执行上面的从开始到s输出哪里的代码,再写进去文件一次。
这里是因为你把数据写进文件后,记事本的编码变成了ANSI,然后你又使用这个记事本,然而的是utf-8编码的文件。
你可以将记事本另存为,在右下框将编码改为utf-8,再替换原来那个文件。
暂时想到的问题只有这么多了,欢迎补充!
也欢迎大神来指教!!!