下面是一个使用Python代码来比较两个CSV文件并将差异打印到一个CSV文件的示例:
import csv
def compare_csv(file1, file2, output_file):
# 读取第一个CSV文件
with open(file1, 'r') as f1:
csv1 = csv.reader(f1)
data1 = [row for row in csv1]
# 读取第二个CSV文件
with open(file2, 'r') as f2:
csv2 = csv.reader(f2)
data2 = [row for row in csv2]
# 比较两个CSV文件的内容
differences = []
for row1 in data1:
found = False
for row2 in data2:
if row1[0] == row2[0] and row1[1] == row2[1]:
found = True
if row1 != row2:
differences.append(row1)
break
if not found:
differences.append(row1)
for row2 in data2:
found = False
for row1 in data1:
if row1[0] == row2[0] and row1[1] == row2[1]:
found = True
break
if not found:
differences.append(row2)
# 将差异写入输出CSV文件
with open(output_file, 'w', newline='') as f:
writer = csv.writer(f)
writer.writerows(differences)
# 示例用法
compare_csv('file1.csv', 'file2.csv', 'output.csv')
上述代码中的file1.csv
和file2.csv
是要比较的两个CSV文件的文件名,output.csv
是要输出的CSV文件的文件名。代码首先读取两个CSV文件的内容,并将其存储在data1
和data2
列表中。然后,它比较两个列表中的内容以找出差异,并将差异存储在differences
列表中。最后,它将differences
列表中的内容写入到输出CSV文件中。