提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
题目:
从文件(dafen.txt)中取出12个裁判员为10个运动员大的分数,每个运动员评分中去掉一个最高分和一个最低分,计算平均成绩,然后给出运动员排名;
测试准备:(dafen.txt文件)
代码:
with open("dafen.txt",'r') as f:
player = [[]for i in range(10)]
countlines=0 #行数#这里的行数也代表了运动员的编号
for contents in f:
contents = contents.strip() #返回的是一个str类
contents = contents.split(' ') #返回一个list 按照空格分割
scorenum = len(contents) #这里的list大小,也就代表了一共有多少个分数
for i in range(scorenum):
contents[i]=float(contents[i])
maxscore = max(contents)
minscore = min(contents)
#round(tmp,int)将tmp保留为int位的小数位
temp = round((sum(contents)-maxscore-minscore)/(scorenum-2) ,2)
player[countlines].append("第{}号的选手成绩是".format(countlines+1))
player[countlines].append(temp)
countlines+=1
#排序
player.sort(key = lambda x:x[1],reverse = True)
#print(player) 输出
for i in range(10):
print("第{}名的选手是 ".format(i+1),player[i])
效果截图:
总结
提示:这里对文章进行总结:
例如:以上就是今天要讲的内容,本文仅仅简单介绍了从文件(dafen.txt)中取出12个裁判员为10个运动员大的分数,每个运动员评分中去掉一个最高分和一个最低分,计算平均成绩,然后给出运动员排名;