Ich versuche, zwei Liste von Dateien aus verschiedenen Verzeichnissen zu vergleichen. Wenn eine Übereinstimmung gefunden wird, sollte die Datei in ein anderes Verzeichnis geschrieben werden. Unten ist mein Code.Vergleichen Sie zwei Liste von Dateien zwischen verschiedenen Verzeichnissen in Python
filelist= ['sample2\\output_1.txt','sample2\\output_2.txt','sample3\\asn_todlx_mf_output_3.txt']
filelist2 = ['sample\\output_1.txt','sample\\output_3.txt','sample\\output_7.txt','sample\\output_2.txt','sample1\\output_3.txt']
a = 1
for name in filelist:
a = a + 1
for x in filelist2 :
file1 = open(x, 'r')
file2 = open(name,'r')
FO = open('right\\right_file'+str(a)+'.txt', 'w')
for line1 in file1:
for line2 in file2:
if line1 == line2:
FO.write("%s\n" %(line1))
FO.close()
file1.close()
file2.close()
Zum Beispiel output1 von ‚Mustermappe (Dateiliste)‘ verglichen mit allen Dateien in ‚sample2 (Dateiliste)‘, wenn es eine Übereinstimmung ist, sollte es ‚richtig‘ geschrieben wird Ordner wie ‚right_file1.txt '. Aber das Skript erzeugt 15 Dateien von' right_file1.txt 'bis' right_file15.txt '. Es funktioniert gut, wenn ich versuchte, eine Datei mit der Liste der Dateien zu vergleichen. Bitte hilf mir, das zu bekommen.
Aber die Sache ist, 'output1' kann sogar 'output2' oder 'output3' übereinstimmen! – vignesh
@vignesh Oh, ich verstehe. Also wollen Sie die Dateien nach Inhalt und nicht nach Dateiname vergleichen, oder? –
das ist genau ich suche – vignesh