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

วิธีเปรียบเทียบสองไฟล์บรรทัดต่อบรรทัดใน Python

Python Standard Library มีโมดูลเฉพาะสำหรับวัตถุประสงค์หา Diffs ระหว่าง Strings/Files เพื่อให้ได้ Diff ด้วย Library difflib คุณสามารถเรียกฟังก์ชัน unified_diff บนมันได้ ตัวอย่าง สมมติว่าคุณมี 2 ไฟล์ file1 และ file2 ด้วยเนื้อหาดังนี้:

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

ตัวอย่าง

ตอนนี้เพื่อหา Diff ใช้โค้ดต่อไปนี้:

import difflib

with open('file1') as f1:
    f1_text = f1.read()
with open('file2') as f2:
    f2_text = f2.read()

# หาและพิมพ์ 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