我很难比较两个CSV文件和打印出一个单独的报告。我希望我的脚本首先匹配两个文件上的id,然后比较行的其余部分并打印出一个单独的报告来显示差异。我的脚本比较了两个文件并打印出不同的结果,但是如果新文件有额外的行,它将不起作用。你知道吗
两个文件的示例:
旧文件
ID fname lname status
1 joe pol active
2 peters dol active
3 john nol active
4 mike sol active
新文件
ID fname lname status
1 joe pol active
2 peter dol active
67 ryan olson stop
3 johnny nolly stop
4 mike sol active
代码:
import csv
orig = open('OLD.csv','r')
new = open('NEW.csv','r')
Change = set(new) - set(orig)
print(Change)
with open('OLD.csv', mode='r') as infile:
reader = csv.reader(infile)
with open('different.csv', 'w') as file_out:
for line in Change:
file_out.write(line)
orig.close()
new.close()
file_out.close()
由于CSV文件需要逗号分隔,我假设您的文件可以采用以下格式:
旧.csv:
新建.csv:
然后可以使用以下代码将它们转换为报表:
输出以下差异.txt:
相关问题 更多 >
编程相关推荐