是否可以使用DictWriter读取和写入现有的csv。如果没有,是否有任何可用的包可以执行以下操作:
CSV:
event_type, flight_number, test_result
'ETA', '1234',''
脚本:
testData = csv.DictReader(open('test_data.csv', 'rU'))
for row in testData:
eventType = row['event_type'].strip()
flightNumber = row['flight_number'].strip()
result = 6
row['test_result'] = result
经过计算,我想写一下' test_result'的当前行。列结果的值。
答案 0 :(得分:1)
经过多次修补后,这种方法似乎最好,直到找到更好的方法。
import csv, os
testData = csv.DictReader(open('test_data.csv', 'rU'))
rowHeaders = testData.fieldnames
resultFile = open('result_data.csv', 'w', newline='')
csvWriter = csv.DictWriter(resultFile, rowHeaders)
csvWriter.writeheader()
resultFile.close()
resultFile = open('result_data.csv', 'a', newline='')
csvWriter = csv.DictWriter(resultFile, rowHeaders)
for row in testData:
eventType = row['event_type'].strip()
flightNumber = row['flight_number'].strip()
result = 7
csvWriter.writerow({'event_type': eventType,
'flight_number': flightNumber,
'test_result': result})
它创建一个具有相同精确数据+附加数据的新文件
输出result_data.csv:
event_type, flight_number, test_result
ETA, 1234,7
ETD, 1034,7