我有删除文件内容的问题。我有一个文件'ABC'
在里面。我打开它并truncate()
清除文件中的所有内容,然后写入新内容。但是无论我写什么,都会附加到之前的内容。Python不删除截断文件的内容
>>> handle=open('test.txt', 'r+')
>>> stuff = handle.read()
>>> stuff
'ABC'
>>> handle.truncate()
>>> handle.write('DEF'+stuff)
>>> handle.close()
>>> handle=open('test.txt', 'r+')
>>> handle.read()
'ABCDEFABC'
我想我应该得到'DEFABC'
而是我得到'ABC'
与'DEFABC'
追加到末尾。
是的,这是POSIXly正确的答案,但python'truncate'确实也将文件的大小作为参数。 –
@AnttiHaapala好点,谢谢你的提示。 – timgeb