我的程序没有正确迭代

时间:2014-07-10 02:30:45

标签: python loops

我正在写一个简单的程序,我的for循环有点偏。它只读取最后一个条目。我知道它只输出最后一个条目,我知道为什么,但我似乎无法解决它。 任何帮助都会很棒。我可以让它以另一种方式运行,但我想使用循环。

def main(): 



    testfile = open('tests.txt', 'w')

    #### THIS RUNS -- but only output is last entry #####

    for count in range(1, 6):
        test = int(input('Enter the test score: #' + \
                          str(count) + ' % '))




    testfile.write(str(test) + '\n')



    testfile.close()
    print('The scores are in the tests.txt file.')

main()

输出到文本文件中。

>>> 
Enter the test score: #1 % 89
Enter the test score: #2 % 98
Enter the test score: #3 % 69
Enter the test score: #4 % 36
Enter the test score: #5 % 36
The scores are in the tests.txt file.
>>> 

1 个答案:

答案 0 :(得分:0)

Python关心缩进:循环内部唯一的内容是input语句,因此write只发生一次:在输入最后一个值之后。

您需要将write语句与input语句缩进,以便将其放入循环中。