Python清空CSV文件

11

如何使用Python清空完整的CSV文件。多数论坛中讨论删除行/列的问题都是让你把要保留的内容写入一个新文件,但我需要完全清空文件 - 我该怎么做?


3
“清空”文件的含义是什么?你可以直接删除它,或者用一个0字节的文件替换它。 - Daniel Roseman
1
你想保留列标题但删除数据吗? - Burhan Khalid
3个回答

28

你要做的是截取文件,在这里可以是任何文件。在这种情况下,它是一个csv文件,所以:

filename = "filewithcontents.csv"
# opening the file with w+ mode truncates the file
f = open(filename, "w+")
f.close()

16

您的问题有些奇怪,但我会按照字面意思来解释。清空一个文件不等同于删除它。

您想打开一个 file 对象到 CSV 文件,然后使用 truncate 方法将文件截断为零长度。

f = open("filename.csv", "w")
f.truncate()
f.close()

如果你想删除它,那只需要使用操作系统的文件系统调用:

import os
os.remove("filename.csv")

1
Python的csv模块只能用于读写整个CSV文件,而不能用于操作它们。如果您需要从文件中筛选数据,则必须先读取它,创建一个新的csv文件,然后将筛选后的行写回新文件。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接