以下是一个示例代码,用于比较两个文件中不同行的值:
def compare_files(file1, file2):
with open(file1, 'r') as f1, open(file2, 'r') as f2:
lines1 = f1.readlines()
lines2 = f2.readlines()
for i, (line1, line2) in enumerate(zip(lines1, lines2)):
if line1 != line2:
print(f"行 {i+1} 不同:")
print(f"{file1}: {line1.strip()}")
print(f"{file2}: {line2.strip()}")
print()
if len(lines1) > len(lines2):
print(f"{file1} 有额外的行:")
for line in lines1[len(lines2):]:
print(line.strip())
elif len(lines1) < len(lines2):
print(f"{file2} 有额外的行:")
for line in lines2[len(lines1):]:
print(line.strip())
# 调用示例
compare_files('file1.txt', 'file2.txt')
上述代码通过逐行比较两个文件的内容,并在发现不同的行时打印出行号和具体内容。如果一个文件比另一个文件多出行数,将打印出多出的行。如果一个文件比另一个文件少行数,将打印出缺少的行。
请确保将 file1.txt
和 file2.txt
替换为要比较的实际文件名。