在一个非常讨厌的剧本中,我终于开始工作了,实际上我不得不重新平衡寻求者
f.seek(0, 1)
在f.write()函数写入任何“卡住”之前。我的意思是我尝试了很多方法来解决这个问题,但唯一有效的方法就是上面简单的一行。
当然,我在写入之前和之后用f.tell()检查指针 - 相同!
我在这个脚本中使用Python 2.7.3。这可能是个错误吗?我觉得厌倦了使用它,好像......太奇怪了。
答案 0 :(得分:2)
听起来很奇怪。想到的唯一解释是你没有考虑到缓冲的影响。
具体来说,当您向文件写入内容时,首先将其写入内部缓冲区。
时,缓冲区的内容将写入文件f.flush()
被召唤;或f.seek()
被召唤。因此,如果您在向写入一些数据之后检查文件的内容,但在上述任何一种情况发生之前,您通常不会看到新写入的数据。 / p>