我正在编写一个程序,该程序从数据库读取并将内容放入.txt文档中。因为我不希望这个.txt太大,所以在重写行之前,我先使用file.truncate()方法删除了所有内容。但是,每次我运行脚本时,文件会变得越来越大。感谢您的帮助!
"red"
答案 0 :(得分:3)
您正在打开文件以进行读取和追加(“ r +”),然后读取文件。文件指针前进到文件末尾。截断文件时,您将在此时截断。
您必须在truncate
命令之前将文件指针指向文件的开头:
file.seek(0)
或者,您可以简单地使用truncate
接受的唯一参数,即截断的大小:
file.truncate(0)
答案 1 :(得分:2)
file.truncate
according the manual这样做:
截断文件的大小。如果存在可选的size参数, 文件将被截断为(最大)该大小。大小默认为 当前职位...
因此您需要提供参数size=0
:
file.truncate(size=0)