为什么我得到" TypeError:非空格式字符串传递给对象.__格式__"

时间:2015-10-22 22:06:00

标签: python list tuples

我想格式化元组列表中的内容并将它们打印在一个漂亮的表中,但是,我不断收到此错误。我做错了什么?

def open_file():

    while True:

        try:
            input_file = input('Enter the name of the Input File: ' )
            ifile = open(input_file, 'r' )
            break

        except FileNotFoundError:
            print('File not found. Try again.')


    gradebook = [] 

    for line in ifile:  

        student = line.split()
        #print(student)

        lname = student[0]
        fname = student[1]
        score1 = int(student[2])
        score2 = int(student[3])
        #print("DEBUG: First Score: ", score1)
        average = (score1 + score2) / 2
        #print(average)
        single = (lname, fname, score1, score2, average)
        #print(single)
        gradebook.append(single)
        gradebook.sort()
    return gradebook


def iprint(gradebook):

    iform = "{:<10s} {:<10s} {:>6d} {:>6d} {:>7.1f}"

    print("Last       First       Score1  Score2 Average")  
    print(45*'-')

    for single in gradebook:    

        iline = iform.format( gradebook[0], gradebook[1], gradebook[2], gradebook[3], gradebook[4])
        print(iline)


def main():        
    gradebook = open_file()        
    iprint(gradebook)

main()

0 个答案:

没有答案