从CSV文件中删除空格而不创建新文件

4

我希望你能帮我翻译一下关于IT技术方面的内容。以下是需要翻译的文本:

在csv表格中,有些空白处需要清除。

经过几个小时的搜索,我发现可以使用以下代码来解决这个问题:

input = open('file.txt', 'wb')
output = open('new_file.txt', 'wb')
writer = csv.writer(output)
for row in csv.reader(input):
    if any(field.strip() for field in row):
        writer.writerow(row)
input.close()
output.close()  

我的问题是:如何在不创建新文件的情况下删除空白空间?

1个回答

3

如果您的文件不是太大以至于行可以完全适合内存,您可以首先提取有效的行,然后覆盖该文件。

with open('file.txt', 'rb') as inp:
    valid_rows = [row for row in csv.reader(inp) if any(field.strip() for field in row)]

with open('file.txt', 'wb') as out:
    csv.writer(out).writerows(valid_rows)

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