使用DictWriter在循环内的csv末尾添加行时遇到了一个奇怪的问题。 当文件达到12288字节时,不再添加行,而是替换行。 为了检查这个,我进行了一个简单的测试:
import pandas as pd
import csv
test=pd.DataFrame(columns=('key1','key2','key3','key4','key5'))
test.to_csv("testwrite.csv",index=False)
for i in range(500):
headers={}
data={}
words={'key1':'col1','key2':'col2','key3':'col3','key4':'col4','key5':'col5'}
for k,v in words.items():
headers[k]='keyval'+str(i)
data[k]='colval'+str(i)
with open("testwrite.csv", 'r+',newline='\n') as f:
header=next(csv.reader(f))
dw=csv.DictWriter(f, header)
dw.writerow(data)
f.close()
有没有人遇到类似的问题或有解决方案?