我有一个5列的csv文件,我想在第6列中添加数据。我拥有的数据在一个数组中。
现在,我所拥有的代码只会在csv文件中已经存在所有数据之后,才将我想要的数据插入第六列。
例如,我有:
wind, site, date, time, value
10, 01, 01-01-2013, 00:00, 5.1
89.6 ---> this is the value I want to add in a 6th column but it puts it after all the data from the csv file
这是我正在使用的代码:
csvfile = 'filename'
with open(csvfile, 'a') as output:
writer = csv.writer(output, lineterminator='\n')
for val in data:
writer.writerow([val])
我以为使用'a'会将数据追加到新列中,但是相反,它只是将其放在所有其他数据之后(“之下”)...我不知道该怎么办!
参考方案
追加将数据写入文件的末尾,而不是每行的末尾。
而是创建一个新文件,并将新值附加到每一行。
csvfile = 'filename'
with open(csvfile, 'r') as fin, open('new_'+csvfile, 'w') as fout:
reader = csv.reader(fin, newline='', lineter