我试图通过将python文本文件打开到r+模式来执行读写操作。但是,不管我读了多少个字符(比如“预读(5) '),然后再执行写入操作(例如“fo.写入(“random”),文本写入/附加在文件末尾。你知道吗
fo = open("C:/Users/Dell/Desktop/files/new.txt",'r+')
fo.read(5)
fo.write('random')
fo.close()
我希望正在写入的文本(在本例中为“random”)是从第6个字符开始写入的,但却被写入/附加在文本文件的末尾。这种行为的可能解释是什么?你知道吗
这绝对像个虫子。你知道吗
解决方法是在写入之前显式查找当前文件位置:
编辑:正如@Blckknght所指出的,这是一个源于Windows的C级实现的已知问题。您可以参考Beginner Python: Reading and writing to the same file以获得参考和讨论,尽管这个链接的问题与python2有关,在python2中,相同代码的行为是不同的(写操作要么什么也不做,要么产生一个
OSError
)。你知道吗相关问题 更多 >
编程相关推荐