我正在读取一个CSV文件,然后写入一个新文件:
import csv
with open('thefile.csv', 'rb') as f:
data = list(csv.reader(f))
import collections
counter = collections.defaultdict(int)
for row in data:
counter[row[11]] += 1
writer = csv.writer(open('/pythonwork/thefile_subset1.csv', 'w'))
for row in data:
if counter[row[11]] >= 500:
writer.writerow(row)
出于某种原因,我无法让csv.writer关闭文件。当我打开文件时,它显示为只读,因为它仍然处于打开状态。
我完成后如何关闭thefile_subset1.csv?
KeyboardInterrupt
时,这段代码对我来说无法正常工作。使用flush()
方法可以解决这个问题。请查看我提供的答案。 - Caglayan DOKME