Ich habe nach ähnlichen Fragen zu SO gesucht, aber nichts gefunden, was für mich funktioniert hat.Python - Wie man zwei Dateien vergleicht und nur die verschiedenen Zeilen in einer dritten Datei ausgibt
Ich habe zwei große Dateien, sie sollten identisch sein, aber eine der Dateien ist 60 Zeilen länger als die andere. Ich möchte wissen, was diese Zeilen sind und wo ich sie finden kann.
Ich habe gelesen, dass man difflib verwenden kann, um dies zu tun, aber ich kann nicht herausfinden, wie es geht. Ich bekomme immer +
und -
in der Datei, aber das will ich nicht. Ich möchte nur beide Dateien durchsuchen und die ungewöhnlichen 60 Zeilen in einer dritten Datei melden.
Ich habe diesen Code geschrieben, aber es druckt nicht die verschiedenen Zeilen aus.
f1 = open('file1.txt','r')
f2 = open('file2.txt','r')
f3 = open('file3.txt','w')
diff = set(f1).difference(f2)
same.discard('\n')
for line in same:
f3.write(line)
Mögliche Duplikat [in Python zwei Dateien Bericht Unterschied vergleichen] (https://stackoverflow.com/questions/19120489/compare-two-files-report-difference-in-python) –
Können Sie nicht einfach 'diff' von deiner Shell ausführen? Warum müssen Sie Ihr eigenes Dienstprogramm schreiben? Es ist ein gelöstes Problem. –
Was ist die Ausgabe, die Sie bekommen? –