weixin_59382892 2021-06-16 23:52 采纳率: 100%
浏览 60
已采纳

编程通过键盘输入每一位运动员

体操比赛成绩统计。多名运动员,多个评委打分,去掉- -个最高分和去掉- -个最低分,对其余分数求平均分作为- -个运动员成绩。

编程通过键盘输入每位运动员编号和每个.评委的成绩,求出运动员的最终成绩,并将运动员编号和最终成绩保存在一一个字典.中,形如{编号1:最终成绩1,学号2:最终成绩2.....,并将结果输出。

  • 写回答

1条回答 默认 最新

  • CSDN专家-文盲老顾 2021-06-17 14:57
    关注
    t = int(input('请输入评委人数(不得少于3人):'))
    s = int(input('请输入学生人数(不得少于1人):'))
    stus = []
    for i in range(s):
        stu = {'score':[]}
        stu.update({'sn':str(input('----\n请输入学生学号:'))})
        for j in range(t):
            stu['score'].append(input('请输入评委'+str(j+1)+'的评分:'))
        stu['score'].sort()
        stu.update({'min':stu['score'].pop(0)})
        stu.update({'max':stu['score'].pop()})
        stu.update({'avg':eval('+'.join(stu['score']))/len(stu['score'])})
        stus.append(stu)
    r = {n['sn']:n['avg'] for n in stus}
    print(r)
    

    使用列表stus存储所有学生成绩,每个学生的成绩信息为循环中stu词典,stu['sn']记录学号,stu['score']记录所有评委评分

    使用列表删除元素方式移除最高分和最低分并记录到min和max里,用剩余成绩通过字符串拼接成一个算式并运算记录到avg里

    最终组成输出格式信息词典,并打印

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 YoloV5 第三方库的版本对照问题
  • ¥15 请完成下列相关问题!
  • ¥15 drone 推送镜像时候 purge: true 推送完毕后没有删除对应的镜像,手动拷贝到服务器执行结果正确在样才能让指令自动执行成功删除对应镜像,如何解决?
  • ¥15 求daily translation(DT)偏差订正方法的代码
  • ¥15 js调用html页面需要隐藏某个按钮
  • ¥15 ads仿真结果在圆图上是怎么读数的
  • ¥20 Cotex M3的调试和程序执行方式是什么样的?
  • ¥20 java项目连接sqlserver时报ssl相关错误
  • ¥15 一道python难题3
  • ¥15 牛顿斯科特系数表表示