Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

จะเปรียบเทียบไฟล์สองไฟล์ที่ต่างกันทีละบรรทัดใน Python ได้อย่างไร


ไลบรารีมาตรฐานของ Python มีโมดูลเฉพาะสำหรับวัตถุประสงค์ในการค้นหาความแตกต่างระหว่างสตริง/ไฟล์ หากต้องการทราบความแตกต่างโดยใช้ไลบรารี่ difflib คุณสามารถเรียกใช้ฟังก์ชัน united_diff ได้ ตัวอย่างเช่น สมมติว่าคุณมี 2 ไฟล์ file1 และ file2 ที่มีเนื้อหาดังต่อไปนี้ −

file1:
Hello
People
of
the
world
file2:
Hello
People
from
India

ตัวอย่าง

ตอนนี้ใช้ความแตกต่างโดยใช้รหัสต่อไปนี้ -

import difflib
with open('file1') as f1:
    f1_text = f1.read()
with open('file2') as f2:
    f2_text = f2.read()
# Find and print the diff:
for line in difflib.unified_diff(f1_text, f2_text, fromfile='file1', tofile='file2', lineterm=''):
    print line

ผลลัพธ์

สิ่งนี้จะให้ผลลัพธ์ -

--- file1
+++ file2
@@ -1,5 +1,4 @@
 Hello
 People
-of
-the
-world
+from
+India