Python键盘输入10位同学的成绩单,每位同学成绩单包括语数英3门课程的成绩,请计算 1 每位同学的总分,并对10位同学的成绩按照总分从高到低排序 2 计算10位同学的平均成绩,分别就语数英进行均分计算(选作) 建议:建立嵌套列表。要求:计算结果截图与程序一起上传
时间: 2023-06-01 12:02:33 浏览: 24
scores = []
for i in range(10):
name = input("请输入第{}位同学的姓名:".format(i+1))
grade = []
for j in range(3):
score = int(input("请输入{}的成绩:".format(['语文', '数学', '英语'][j])))
grade.append(score)
scores.append([name, grade])
# 计算每位同学的总分
for i in range(10):
total = sum(scores[i][1])
scores[i].append(total)
# 按照总分从高到低排序
scores.sort(key=lambda x:x[3], reverse=True)
# 输出每位同学的总分和成绩单
for i in range(10):
print("{}的总分是{},成绩单如下:".format(scores[i][0], scores[i][3]))
print("语文:{}\n数学:{}\n英语:{}".format(scores[i][1][0], scores[i][1][1], scores[i][1][2]))
# 计算每门课程的平均成绩
chinese = sum([scores[i][1][0] for i in range(10)]) / 10
math = sum([scores[i][1][1] for i in range(10)]) / 10
english = sum([scores[i][1][2] for i in range(10)]) / 10
print("语文的平均成绩是{},数学的平均成绩是{},英语的平均成绩是{}".format(chinese, math, english))