打印到文件在Linux上运行但不在Windows上运行?

时间:2013-11-09 01:07:18

标签: python windows file python-3.x output

所以我编写了这段代码,它在Linux上运行得非常好。

  1. 从文件中读取数据
  2. 做我的代码应该做的任何事情
  3. 将解决方案写入新文件。
  4. 以下是应该执行此操作的代码部分:

    outFile = open( "input.txt", "w" )
    
    for item in oplist:
         outFile.write(item + "\n")
    
    outFile.close
    

    它在Linux上完全正常,但在Windows上只创建新的输出文件,但不会在其中写入任何内容。

    请帮忙!

1 个答案:

答案 0 :(得分:2)

你不是关闭文件;你只是指关闭方法。叫它:

outFile.close()

在没有关闭的情况下,在Python退出之前不会刷新文件缓冲区。

处理文件关闭的更好方法是使用with语句:

with open( "input.txt", "w" ) as outFile:
    for item in oplist:
        outFile.write(item + "\n")

现在文件自动关闭。