Python 是計算機編程領域中使用廣泛的語言之一,其中文件處理是其常用功能之一。在Python 中,經常需要對不同文件的內容進行比較,并找出其中的不同之處。文件內容的對比需要讀取文件中的每一行,并進行比較,下面介紹一種Python 文件行對比的方法。
def compare_files(file1, file2):
"""比較兩個文件內容的行差異"""
with open(file1) as f1, open(file2) as f2:
# 按行讀取兩個文件內容
lines1 = f1.readlines()
lines2 = f2.readlines()
# 獲取兩個文件行數中較小的值
min_lines = min(len(lines1), len(lines2))
for i in range(min_lines):
# 判斷兩行內容是否相同
if lines1[i] != lines2[i]:
print(f"Line {i}:")
print(f"File 1: {lines1[i]}")
print(f"File 2: {lines2[i]}")
# 判斷兩個文件是否行數不同
if len(lines1) >min_lines:
for i in range(min_lines, len(lines1)):
print(f"Line {i}:")
print(f"File 1: {lines1[i]}")
print("File 2:")
elif len(lines2) >min_lines:
for i in range(min_lines, len(lines2)):
print(f"Line {i}:")
print("File 1:")
print(f"File 2: {lines2[i]}")
在上述代碼中,定義了一個函數compare_files(file1, file2)
,該函數接收兩個文件名。首先使用with open()
語句打開文件,使用readlines()
方法讀取每一行的內容。
接下來,比較兩個文件的行差異。首先獲取兩個文件的行數較小值,并循環范圍設為該值。在循環中,判斷兩行內容是否相同,若不同,則輸出不同之處。如果兩個文件的行數不同,就需要再循環輸出行數不同之處。
這種 Python 文件行對比的方法可以快速比較兩個文件的內容是否一致,也可以找出兩個文件中相同的行數不同之處,使用靈活便捷。
上一篇vue cms mit