设计程序,没有思路
已知“score”文件夹下score.txt 中保存有10 个评委对3个候选人的打分情况,示例如下
Judge1,75,85,81
Judge2,84,87,76
从左到右各个字段的含义分别为:评委号,1号候选人得分,2号候选人得分,3号候选
人得分,各字段之间用逗号分隔。
要求设计Python程序,(1)读取该txt文件,将每个候选人的得分去掉-一个最高分和一-
个最低分,(2)计算剩余得分的平均数作为该候选人最终成绩,(3)找出最终成绩最高
的候选人的编号及最终成绩,分别输出到socre文件夹下score.xlsx 文件的score工作簿
中A1和B1单元格. def average(values):
max=0
min=100
sum=0
for i in values:
if i>max:
max=i
if i<min:
min=i
sum+=i
return (sum-max-min)/8
def read():
with open("score\score.txt",encoding='UTF-8') as file:
it=zip(*(map(int,i.split(',')) for i in file))
it.__next__()
maxidx=0
max=0
for i,j in enumerate(it,1):
j=average(j)
if j>max:
max=j
maxidx=i
return maxidx,max写入我就不会了 循环读取文档的每一行,把每行以逗号分隔成列表,.append()进候选人1列表,每行加入候选人2列表,每行加入候选人3列表,sorted()列表排序,取元素,sum()/6求平均值,再互相比较一下,用openpyxl库写入,应该蛮简单的吧
页:
[1]