我试图使用Popen()来读取一个文件,但在创建并写入文件后立即使用它却不起作用。打印p会得到两个空元组('','')。为什么?我使用了rename来确保原子写入,如此处所讨论的。
在Python程序中,为什么我不能在写入文件后立即读取文件?
问题的原因是你没有调用close函数。使用fd.close()来关闭文件(你忘记了在函数调用中加上括号)。这个问题可以通过使用with语句来解决:
close
fd.close()
with
with open("__q", "w") as fd: fd.write(t) # 文件会在这里自动关闭
我花了很多时间来解决这个问题。有没有一种方法让Python能够检测到这种语法错误呢?
用户名或电子邮箱地址
密码