python 计算student_grade.txt 中 语文成绩的平均值, 找出数学成绩最高的学生是谁

题目要求: 计算student_grade.txt 中 语文成绩的平均值, 找出数学成绩最高的学生是谁

方法一:

with open('student_grade.txt', 'r', encoding='utf-8') as f:
    data = f.read()                                         #读取student_grade.txt的内容给data(文本)
data_lines=data.splitlines()                                #把文本转换成列表,同时去掉换行
empty={}                                                    #定义一个空字典
for i in data_lines:                                        
    data_list=i.split('\t')                                 
    empty[data_list[0]]=data_list[1:]                        #遍历列表data_lines中的每个元素,去掉'\t'后生成姓名和成绩对应的字典.
empty.pop('姓名')                                            #弹出标题行
shuxue=0
yuwen=0
for k,v in empty.items():
    yuwen=yuwen+int(v[0])                                   #遍历字典,求语文成绩的总和
    if int(v[1])>shuxue:
        shuxue=int(v[1])                                    #遍历字典empty,求出最高的数学成绩
        name=k
print(name+'同学的数学成绩最高,为%d分.'%shuxue,'\n','语文成绩的平均值为%d分.'%(yuwen/len(empty)))   

  

猜你喜欢

转载自www.cnblogs.com/theoup/p/9777068.html