Python:为什么我的写入功能在while循环中不起作用?

bas*_*onz 2 python while-loop python-3.x

我正在尝试制作一个程序,该程序连续要求一个字符串并将其输出到.txt文件。它可以在没有while循环的情况下正常工作,所以我不确定在这里出什么问题。

infile = open('hardlopers.txt', 'a+')
i = 0
while i < 1:
    naam = input('geef je naam:')
    infile.write(naam)
Run Code Online (Sandbox Code Playgroud)

Ted*_*man 5

您的程序将永远运行。除非关闭(或使用明确告诉它),否则您要写入的文件不会“保存”(写入实际文件infile.flush())。没有循环,程序终止,这意味着文件已关闭并且您的更改已保存。

flush()方法不一定总是保存文件。在这种情况下,您可以使用os.fsync(infile.fileno())