我有两个名为x.csv
和y.csv
的csv文件。 x.csv
只有一行 - Column A:0, Column B:1, Column C:2, Column D:3
。在y.csv
中,只有一行 - Column A:2, Column B:3, Column C:4
。我需要使用python找到两个csv文件的区别并输出到第三个csv文件。
到目前为止,我已尝试with open('x.csv','rb') as f1, open('y.csv','rb') as f2
答案 0 :(得分:0)
从我对这个问题的理解,这应该比较文件并创建第三个csv与每个单元格的差异。就个人而言,我认为这不是一个非常优雅的解决方案,并且会在一系列场景中崩溃,但它至少应该让你开始。这部分是基于评论中给出的相关Q / A.
import csv
def csv_get(csvfile):
with open(csvfile) as f:
for row in csv.reader(f):
for i in row:
yield i
def csv_cmp(csvfile1, csvfile2, output):
row = []
read_file_2 = csv_get(csvfile2)
for value_1 in csv_get(csvfile1):
value_2 = read_file_2.next()
print("File 1: {} File 2: {}").format(value_1, value_2)
difference = int(value_1) - int(value_2)
row.append(difference)
with open(output, "w") as output_file:
csv.writer(output_file).writerow(row)
read_file_2.close()
csv_cmp(csvfile1="C:\\...\\a.csv",
csvfile2="C:\\...\\b.csv",
output="C:\\...\\c.csv")