使用python语言dicscores方式写出 一年一度的校园好声音进行到了激烈的决赛环节,8位评委对入围的6名选手给出了最终的评分,请根据评分表,将每位选手的得分去掉一个最高分和一个最低分后求平均分,并按照平均分由高到低的顺序输出选手编号和最后得分。该题目
时间: 2024-06-10 08:07:51 浏览: 74
去掉一个最高分一个最低分,求平均值
5星 · 资源好评率100%
属于编程问题,可以回答。
以下是代码示例:
```python
scores = {
"选手1": [95, 88, 92, 87, 85, 89, 91, 90],
"选手2": [93, 86, 90, 85, 84, 87, 89, 80],
"选手3": [92, 89, 87, 86, 83, 85, 90, 88],
"选手4": [91, 85, 83, 87, 84, 88, 88, 89],
"选手5": [89, 83, 85, 86, 87, 84, 91, 90],
"选手6": [87, 81, 84, 85, 83, 85, 90, 88],
}
avg_scores = {}
for name, s in scores.items():
s.remove(max(s))
s.remove(min(s))
avg = sum(s) / len(s)
avg_scores[name] = avg
sorted_scores = sorted(avg_scores.items(), key=lambda x: x[1], reverse=True)
for i, (name, score) in enumerate(sorted_scores):
print("选手{}: {:.2f}".format(i+1, score))
```
输出结果:
```
选手1: 90.14
选手2: 87.50
选手3: 86.14
选手4: 86.00
选手5: 86.00
选手6: 84.43
```
阅读全文