【问题描述】学校举办“爱中华,爱经典”经典古诗词朗诵大赛,一共邀请了n位评委为每一名参赛选手评分,每位评委对某选手的评分从键盘输入,并存入一个列表中,去掉一个最高分,去掉一个最低分后,其余的成绩取平均值得到该选手的最终成绩,请编程根据规则计算该参赛选手的最终得分并输出。
【样例输入】[9,10,7.5,8,8.8,9.1,8.2]
【样例输出】8.62
完整代码如下:
a=eval(input())
max=max(a)
min=min(a)
a.remove(max)
a.remove(min)
sum=0
for i in range (0,len(a)):
sum+=a[i]
print(sum/len(a))
代码解释:
“a=eval(input())”,用户导入各评委所打分的选手成绩列表。
“max=max(a)
min=min(a)”,分别求出列表中的最大值和最小值。
“a.remove(max)
a.remove(min)”,将所求得的最大值和最小值从列表a中移除。
“ sum=0
for i in range (0,len(a)):
sum+=a[i]
print(sum/len(a)) ”,sum+=a[i]是sum=sum+a[i]的缩写,即将a列表中剩余的值分别加入变量sum中,即得sum为剩余的值的总和。再将sum除以剩余的值的数量,就得到了成绩平均数,最后打印成绩平均数。
运行效果展示:
(声明:以上内容均为原创)