2016-06-27 9 views
3

削除したいCSVシートに空白があります。新しいファイルを作成せずに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() 

私の質問は:私は新しいファイルを作成しなくても、空白を削除するにはどうすればよいですか?

答えて

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) 
を収めることができ、最初の有効な行を抽出し、その後、ファイルを上書きし、あなたのファイルを提供することができます
関連する問題