我看到奇怪的行为,当我用附加模式('a +')在Windows 7下使用Python打开文件。Python Windows7:奇怪的行为打开文件追加
我不知道该行为是否是在事实上不正确或我误解了如何使用下面的代码:
log_file= open(log_file_path, "a+")
return_code = subprocess.call(["make", target], stdout=log_file, stderr=subprocess.STDOUT)
log_file.close()
上面的代码行不正确追加到该文件。事实上,在后续运行中,它甚至不会修改文件。 我使用Python Shell对它进行了测试。 第一次打开文件后,多次进程调用将会正确地附加到文件中,但是一旦文件被关闭并重新打开,它将不会再次追加。
任何人都有任何线索?
感谢
为了进一步简单的问题,这是另一组的步骤,这将失败:如果打开此文件TEMP.TXT
log_file=open("temp.txt", "a+")
log_file.write("THIS IS A TEST")
log_file.close()
log_file=open("temp.txt", "a+")
subprocess.call(["echo", "test"], stdout=log_file, stderr=subprocess.STDOUT, shell=True)
log_file.close()
是我所看到的:
test
SA MUTHER F * * TEST
我已经更新了下面的答案,以反映您发布的新信息,减去发誓:) – JoeFish