Python CSV比较两个文件?

时间:2015-12-03 14:03:45

标签: python csv

我有两个CSV文件。

说一个人

  

Bob |地址| AA22 XXX

说第二个

  

| AA22 XXX | 32MPH

如何让代码检查这两个文件并看到它们都有AA22 XXX并使其创建一个包含所有信息的新文件?

 print ("Here is the list of speeding cars")
    for i,x in zip (Speeding_Cars,Valid_Number_Plates):
        print (i,x)
        with open ("Cars.csv","w")as f:
            f_csv = csv.writer(f)
            writer = csv.writer(f,delimiter = ",")
            writer.writerows(zip(Speeding_Cars,Valid_Number_Plates))


    f1 = ("Data.csv", "r")
    f2 = ("Cars.csv","r")
    f3 = ("Results.csv","w")
    c1 = csv.reader(f1)
    c2 = csv.reader(f2)
    c3 = csv.writer(f3)

    if f1[3] == f2[2]:
        writer = csv.writer(f,delimiter = ",")
        writer.writerows(zip(f1 , f2))

1 个答案:

答案 0 :(得分:1)

首先,将您的许可证数据粘贴在一个字典中,由盘子索引 编号

with open('licences.csv') as f:
    ls = {plate:[name, addr] for name, addr, plate in  [line.split('|') for line in f]}

然后轮到门票了,

with open('tickets.csv') as f:
    ts = [line.split('|') for line in f]

最终我们可以加入我们的数据并将结果写入文件

with open('results.csv', 'w') as f:
    f.write('\n'.join(['|'.join(ls[plate]+[plate, speed]) for plate, speed in ts]))

加入 加入我们的数据和代码中的join两个完全不同的东西......