Python的问题,希望有人帮帮忙

有一份成绩单,需要计算每个学生的平均分,并添加在每一行的末尾


 
def get_data():
    f = open('a.txt', 'r', encoding='utf-8')
    d = f.read()
    f.close()
    return d
 
def get_score(d):
    qname = input('输入姓名')
    qstatus = False
    for i in d.split('\n')[1::]:
        xuehao, name, yuwei, shuxue, yingyu = [j.strip() for j in i.split(' ') if j]
        if qname == name:
            print(f'姓名{name},学号{xuehao},语文{yuwei},数学{shuxue},英语{yingyu}')
            qstatus = True
    if qstatus is False:
        print('无此人成绩信息')
 
def get_everyone(d):
    data_list = []
    for i in d.split('\n')[1::]:
        xuehao, name, yuwei, shuxue, yingyu = [j.strip() for j in i.split(' ') if j]
        avg = (int(yuwei) + int(shuxue) + int(yingyu)) / 3
        print(f'学生:{name},语文{yuwei},数学{shuxue},英语{yingyu},平均分{avg}')
        data_list.append([xuehao, name, yuwei, shuxue, yingyu, avg])
    # 写入新的文件
    f = open('new.txt', 'w', encoding='utf-8')
    f.write('学号 姓名 语文 数学 英语\n')
    for i in data_list:
        f.write(' '.join([str(j) for j in i]))
        f.write('\n')
    f.close()
 
if __name__ == '__main__':
    d = get_data()
    print('人员总数', len(d.split('\n'))-1)
    get_score(d)
    get_everyone(d)

img

img

img

Excel吗?数据示例方便看看?