import csv
f1 = open("file1.csv")
f2 = open("file2.csv")
csv_f1 = csv.reader(f1)
csv_f2 = csv.reader(f2)
for row1 in csv_f1:
for row2 in csv_f2:
if row1 == row2:
print row1[0], row2[0]
else:
print row1[0], "Invalid"
这个程序没有打印出row1,row2.它只是打印file1的第一行,并且在同一行上多次无效.
解决方法:
您需要比较相应的行,而不是每行与行进行比较,这是您的代码现在所做的.
import csv
import itertools
f1 = open("file1.csv")
f2 = open("file2.csv")
csv_f1 = csv.reader(f1)
csv_f2 = csv.reader(f2)
for row1,row2 in itertools.zip_longest(csv_f1, csv_f2):
if row1 == row2:
print row1, row2
else:
print row1, "Invalid"
标签:python
来源: https://codeday.me/bug/20190728/1560211.html