Python编程题,在某比赛中,共有五位评委给选手打分。计算选手得分时,去掉最高分与最低分,然后求其平均值,该值就是选手的最终得分。

第一种

grades=[]#空列表
for i in range(1,6):#遍历,5位评委
    grade=int(input('第%d号评委评分'%i))
    grades.append(grade)#利用append添加到列表里,得到该选手的所有评分
#用min(),max()函数获取最小最大值
min_grades=min(grades)
max_grades=max(grades)
#去掉最低最高分 ,也可以用总成绩减去最高最低分
grades.remove(min_grades)
grades.remove(max_grades)
ave=sum(grades)/len(grades)#平均值
print('最终得分:%.2f'%ave)

第二种,也可套用于其他评委人数

grades =[]


for i in range(int(input("评委人数:"))):

    grade=float(input(f'请输入第{i+1}位评委评分:\n'))

    grades.append(grade)

print(f'最高分:{max(grades)}\n最低分:{min(grades)}\n最终得分:{(sum(grades)-max(grades)-min(grades))/(len(grades)-2):.2f}')
#(sum(grades)-max(grades)-min(grades))/(len(grades)-2)这里是用总得分减最大值减最小值除3得出最终得分

你可能感兴趣的:(Python编程题,python,开发语言)