1.python 编程实现:假设共有10个裁判,每个裁判给该参赛选手打分(分值在0~10之间)后,去掉一个最高分和一个最低分之后的平均分即为该运动员的最后得分。调用文件写操作方法把某位选手的得分数据保存在score.txt文件中,文件内容如下形式:9.23 8.91 10 9.8 9.18 8.9 9.5 9.8 9.65 9.78各数据之间使用一个空格分隔。请编写程序, 完成文件创建,文件写入和读取,输出最后得分(保留2位小数)。2.在程序编译完成后详细解释本程序。
时间: 2024-03-09 10:46:53 浏览: 87
下面是实现该程序的Python代码:
```python
# 写入文件
with open('score.txt', 'w') as f:
f.write('9.23 8.91 10 9.8 9.18 8.9 9.5 9.8 9.65 9.78')
# 读取文件
with open('score.txt', 'r') as f:
scores = f.read().split()
# 将字符串列表转化为浮点数列表
scores = [float(score) for score in scores]
# 去掉最高分和最低分
scores.remove(max(scores))
scores.remove(min(scores))
# 计算平均分并保留两位小数
avg_score = round(sum(scores) / len(scores), 2)
# 输出最后得分
print('该运动员的最后得分为:', avg_score)
```
本程序先使用`with open()`语句创建了一个名为`score.txt`的文件,并将选手的得分数据写入文件中。然后使用`with open()`语句读取文件中的数据,将字符串列表转化为浮点数列表,并去掉最高分和最低分。最后计算平均分并保留两位小数,输出最后得分。
程序的思路比较简单,主要考察对Python文件读写、列表操作和数学计算的掌握程度。
阅读全文