1.键盘输入张嘉译学习的课程名称及考分等信息,信息间采用空格分隔,每个课程一行,空行回车结束录入,示例格式如:
数学 98
语文 89
英语 94
物理 74
科学 87
输出得分最高的课程及成绩,得分最低的课程及成绩,以及平均分(保留两位小数),输出结果保存至考生文件夹下,命名为“1.txt”
fo=open("1.txt","w")data=input("请输入课程名及对应的成绩:")course_score_dict={}while data: course,score=data.split(' ') course_score_dict[course]=eval(score) # 课程名为键,成绩为值 data=input("请输入课程名及对应的成绩:")score_list=sorted(list(course_score_dict.values()))# 将字典转换成列表,values()返回所有值的信息,对成绩进行排序max_score,min_score=score_list[-1],score_list[0]avg_score=sum(score_list)/len(score_list)max_course,min_course='','' # 设为空字符串for item in course_score_dict.items(): # items方法遍历元组,元组里是键值对 if item[1]==max_score: # 因为(键,值),值为最大成绩时,最高分课程则为元组里的键 max_course=item[0] if item[1]==min_score: min_course=item[0]fo.write("最高分课程是{}{},最低分课程是{}{},平均分是{:.2f}".format (max_course,max_score,min_course,min_score,avg_score))fo.close()