我是python世界的新手,需要帮助
我需要从row3删除重复的值并追加row4的数据,我正在使用以下脚本来实现这一点
一切正常,除了未附加第4行中的数据
感谢您对此的帮助
import csv
result = {}
with open('test.csv', 'r') as csv_file:
csv_reader = csv.DictReader(csv_file)
with open('output.csv', 'w',encoding='utf-8') as new_file:
fieldnames = ['row1','row2','row3','row4','row5',]
csv_writer = csv.DictWriter(new_file,lineterminator='\n' , fieldnames=fieldnames)
csv_writer.writeheader ()
for row in csv_reader:
if row["row3"] in result:
result [row["row3"]].append (row["row4"])
else:
result[row["row3"]] = [row["row4"]]
csv_writer.writerow({
"row1": row["row1"],
"row2": row["row2"],
"row3": row["row3"],
"row4": row["row4"],
"row4": row["row4"]
})
答案 0 :(得分:0)
将行中的“ w”更改为“ a”:
with open('output.csv', 'w',encoding='utf-8') as new_file:
a用于附加到文件。 w用于写操作,它将覆盖以前的所有文件。
有关Python文件输入和输出,请参考https://docs.python.org/3/tutorial/inputoutput.html