成绩统计各位看看怎么做

输入一个正整数n(n>=1),然后输入n行数据,表示的是某班各位同学的各科成绩(每位同学的考试科目都相同),请统计出各门课程的平均分(保留2位小数)。

输入格式:
先一个正整数n(n>=1),然后输入n行数据

输出格式:
输出各门课程的平均分

输入样例:
2
{'语文':95,'数学':82,'英语':75}
{'语文':98,'数学':72,'英语':85}
结尾无空行
输出样例:
语文:96.50
数学:77.00
英语:80.00
结尾无空行

n=int(input())
l=[]
for i in range(n):
    d = eval(input())
    l.append(d)
s1=s2=s3=0
for i in l:
    s1+=float(i['语文'])
    s2+=float(i['数学'])
    s3+=float(i['英语'])
print('语文:%.2f'%(s1/n))
print('数学:%.2f'%(s2/n))
print('英语:%.2f'%(s3/n))

 觉得有用的话采纳一下哈


if __name__ == '__main__':
    n = int(input())
    judge = 0
    dmax = {}
    for i in range(0,n):
        scores = str(input())
        scores = scores.strip('{}')
        scos = scores.split(',')
        for j in scos:
            susc = j.split(':')
            subj = susc[0].strip('\'\'')
            scor = int(susc[1])
            if judge == 0:
                dmax[subj] = scor
            else:
                ishave = dmax.get(subj,'无')
                if ishave == '无':
                    dmax[subj]=scor
                else:
                    if int(dmax.get(subj)) >= scor:
                        continue
                    else:
                        dmax[subj] = scor
        judge += 1
    for x in dmax:
        print(x,dmax.get(x),sep=':')