python – 读取两个csv文件并比较每一行.如果行匹配打印两行,如
发布时间:2020-12-20 11:39:54 所属栏目:Python 来源:网络整理
导读:import csvf1 = 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.它
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" (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |