自行运行,但不运行

时间:2019-09-26 09:05:22

标签: python python-3.x list

当我运行单个代码时,它可以工作,但是当我在主代码中使用它时,会出现此错误:

  

x = ln [0] [1] IndexError:列表索引超出范围

有人可以帮助我吗?

def calculate_three_best(input_file_name, output_file_name):
    main=[]
    reader=csv.reader(input_file_name)
    for row in reader:
        ln=[]
        ln.append(row[0])
        these_grades=list()
        for grade in row[1:]:
            these_grades.append(float(grade))
        ln.append(mean(these_grades))
        main.append(ln)

d=collections.OrderedDict()
for each in main:
    d[each[0]]=each[1]

ln=list(reversed(sorted(d.items(), key=itemgetter(1))))
x=ln[0][1]
lnn=list()
lnn.append(ln[0])
counter=1
for i in range (1,len(ln)):
    if counter<3:
        if ln[i][1]<x:
            counter=counter+1
            x=ln[i][1]
            lnn.append(ln[i])
        else:
            if ln[i][0]>ln[i-1][0]:
                lnn.append(ln[i])
            else:
                y=lnn[i-1]
                lnn[i-1]=ln[i]
                lnn.append(y)

writer = csv.writer(output_file_name)
writer.writerows(lnn)

0 个答案:

没有答案