Python 将csv文件列表与csv文件列表进行比较
以下是代码片段:-Python 将csv文件列表与csv文件列表进行比较,python,list,csv,comparison,Python,List,Csv,Comparison,以下是代码片段:- import csv import sys f1_name = "Result1.csv" f2_name = "Result2.csv" f1 = open(f1_name,'r').readlines() f2 = open(f2_name,'r').readlines() count1 = 0 for line in f1: result = line.strip("\n") count1+=1 if line != "\n" and lin
import csv
import sys
f1_name = "Result1.csv"
f2_name = "Result2.csv"
f1 = open(f1_name,'r').readlines()
f2 = open(f2_name,'r').readlines()
count1 = 0
for line in f1:
result = line.strip("\n")
count1+=1
if line != "\n" and line in f2:
print "Line({0}) in {1} found in Line{2} in {3}({4})".format(
str(result),
f1_name,
str(1+f2.index(line)),
f2_name,
line.strip())
到目前为止,代码正在比较两个csv文件,并以以下格式生成输出:-
Line(1 6 1 1 516405 0 21 8 ) in Result1.csv found in Line2 in Result2.csv(1 6 1 1 516405 0 21 8)
Line(1 6 1 1 516405 21 8 ) in Result1.csv found in Line4 in Result2.csv(1 6 1 1 516405 21 8)
Line(1 6 1 1 21 34 ) in Result1.csv found in Line6 in Result2.csv(1 6 1 1 21 34)
Line(1 6 1 21 60 ) in Result1.csv found in Line8 in Result2.csv(1 6 1 21 60)
但这只是两个文件之间的比较。我有50个csv文件要与50个csv文件进行比较
所以我有两个清单:-
list1 = [Result1.csv, Result2.csv...Result50.csv]
list2 = [Gen1.csv, Gen2.csv....Gen.csv]
如何修改代码并将Result1.csv与Gen1.csv、Result2.csv与Gen2.csv等进行比较
因此,所需的输出将是相同的,但其标题如下:-
Comparing Result1.csv to Gen1.csv
(Same output mentioned above)
Comparing Result2.csv to Gen2.csv
(output)
以此类推。将两个列表压缩并执行
import csv
import sys
list1 = ['Result1.csv', 'Result2.csv'...'Result50.csv']
list2 = ['Gen1.csv', 'Gen2.csv'....'Gen.csv']
for i,j in zip(list1,list2):
f1_name = i
f2_name = j
f1 = open(f1_name,'r').readlines()
f2 = open(f2_name,'r').readlines()
count1 = 0
for line in f1:
result = line.strip("\n")
count1+=1
if line != "\n" and line in f2:
print "Line({0}) in {1} found in Line{2} in {3}({4})".format(
str(result),
f1_name,
str(1+f2.index(line)),
f2_name,
line.strip())
else:
if line != "\n":
print line,'-this is not found in file2'
f1.close()
f2.close()
如果你有50份简历。一次画两个,放置临时比较文件,并与其他文件进行比较。为什么要强制转换为str并使用字符串格式?有一个名为diff的工具可以做到这一点,或者可以使用python的difflib。如果你投了反对票,请发表评论,让我从错误中吸取教训:谢谢sundar的努力。我想再问一件事。如果某个代码不匹配或未找到,我如何处理该代码。目前,仅当在两个csv文件中都找到了精确数据时,它才起作用。是否要以与比较相同的方式打印a-b和b-aYeah中不匹配的文件,并给出“在中找到”输出,如果存在不匹配的内容,让我们假设is Result1.csv中有一个不在Gen1.csv中的额外字段,因此,它应该给出相同的结果,但“未找到”而不是“找到”@sam:请不要在评论中提出其他重要问题。。。