重写前我的CSV文件未清空

时间:2018-07-10 08:07:39

标签: python csv writing

我正在编写一个程序,该程序从数据库读取并将内容放入.txt文档中。因为我不希望这个.txt太大,所以在重写行之前,我先使用file.truncate()方法删除了所有内容。但是,每次我运行脚本时,文件会变得越来越大。感谢您的帮助!

"red"

2 个答案:

答案 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)