zl程序教程

您现在的位置是:首页 >  数据库

当前栏目

python作业完成文件转移之间的数据处理,让数据发生变化。初始数据在scores.txt文件中,请将里面的每个学生的总成绩计算出来,并写入新的scores_new.txt文件中。(提示:先读取sco

2023-04-18 14:14:49 时间
"""
完成文件转移之间的数据处理,让数据发生变化。
初始数据在scores.txt文件中,请将里面的每个学生的总成绩计算出来,
并写入新的scores_new.txt文件中。
(提示:先读取scores.txt文件中的数据,使用readlines()方法,
读入的数据为列表。然后对此列表利用循环分别处理每一个元素,
每个元素类型为str,思考如何将字符串进行分割?(查书即可)
分割后的元素从第2个开始进行求和,并记录每个学生的名字和对应的总分数,
再将此数据写入新文件中即可。)
"""
num = 0
z_list = []
#根据自己的电脑情况进行路径更改,等号左边的信息可以修改
fileName = 'd:\scores.txt'
with open(fileName, 'r', encoding='utf-8') as rfile:
    b = rfile.readlines()
#每次只读取一个学生的信息
for i in b:
#把获取的文件信息转换成字典类型
    a = dict(eval(i))
    # 分数计算,key为学科所以用get方法获取value值
    num = a.get('Java_EE') + a.get('Python') + a.get('Math')

    c = [a.get('name'), str(num)]
    # 临时把写好的信息存入一个列表中
    z_list.append(c)

with open('d:\scores_new.txt', 'w', encoding='utf-8') as wfile:
    for i in z_list:
        wfile.write(str(i) + '
')
print('写入完成!')

#原文件

 #写入之后

 仅供参考!