Python:CSV解析和匹配

时间:2012-03-16 05:54:55

标签: python csv

我想匹配两个CSV文件并写入新的CSV文件,无论这些文件是否匹配。

我的意思是如果每个单元格匹配,我会写“1”,如果没有,我想在新的CSV文件中写“0”。

例如, 第一个文件 (14,女性,高中)

第二个文件 (15男,高中)

我想匹配这些是否是同性别和相同年龄。 我可以写......

 f="first_file.csv"
 s="second_file.csv"
 w="writer.csv"
 first = csv.reader(open(f,'rb'))
 second = csv.reader(open(s,'rb'))
 writer = csv.writer(open(w, "w"))
 for row in first:
    for rwo_2 in second:

然后我不确定我怎么能匹配.... 请帮帮我..并提前谢谢你!...

2 个答案:

答案 0 :(得分:3)

这假设您希望逐行匹配,并使用Nones填充较短的行和文件:

from itertools import izip_longest

for row1, row2 in izip_longest(first, second, fillvalue=[]):
    writer.writerow([int(a == b) for a, b in izip_longest(row1, row2)])

答案 1 :(得分:0)

它不会关心重复的行

set(csv1) == set(csv2)

否则:

sorted(csv1) == sorted(csv2)