python:(可输入评委人数和参赛人数)模拟决赛现场最终成绩计算过程

**python任务一:

首先输入大于3的整数作为评委人数,输入每个选手的姓名,然后依次输入每个评委的打分,要求每个分数都介于0~100,任务一:输入完所有的评委打分后,去掉一个最高分,去掉一个最低分,剩余分数的评价分即为该选手的最终得分。

python任务二:

最后打印输出各选手的得分情况,并以逆序输出。**

lis_score = []
n = int(input("输入评委人数:"))
while n < 3:
    print("评委人数需大于3")
    n = int(input("输入评委人数:"))

player = int(input("比赛人数:"))
while player < 3:
    print("比赛人数需大于4")
    player = int(input("比赛人数:"))


def check_score(score):
    if score >= 0 and score <= 100:
        return score
    else:
        print("分数不合法,重新输入!")
        score = int(input("输入分数:"))
        score = check_score(score)

j = player
name_list=[]
while j > 0 :
    name = input("输入选手姓名:")
    name_list.append(name)
    i = n
    a = []
    while i > 0:
        score = check_score(int(input("输入分数:")))
        a.append(score)
        i -= 1
    avg_score = (sum(a) - min(a) - max(a)) / (n-2)
    lis_score.append([name,avg_score])
    j -= 1

print(lis_score)
#res_list = sorted(lis_score, key=lambda d: d[1], reverse=True)
for i in range(player):
    print("姓名:", name_list[i])
    print("平均分:", lis_score[i][1])

ll=[]
for i in range(player):
    ll.append(lis_score[i][1])
       
    ll.sort(reverse=True)
print(ll)



python:(可输入评委人数和参赛人数)模拟决赛现场最终成绩计算过程_第1张图片
运行如上图》》》》》》》》》》》》》》》》》》

你可能感兴趣的:(python,评委打分)