您可以使用difflib模块。下面是一个使用其^{}类的简单示例:import difflib
import sys
with open('file1.txt') as file1, open('file2.txt') as file2:
line_formatter = '{:3d} {}'.format
file1_lines = [line_formatter(i, line) for i, line in enumerate(file1, 1)]
file2_lines = [line_formatter(i, line) for i, line in enumerate(file2, 1)]
results = difflib.Differ().compare(file1_lines, file2_lines)
sys.stdout.writelines(results)
输出:
^{pr2}$
第一列中的减号和加号字符表示以典型的diff实用程序样式替换的行。没有任何指示符意味着这两个文件中的行是相同的,如果愿意,可以禁止打印这些文件,但是为了保持示例简单,compare()方法创建的所有内容都将被打印。在
以下是两个文件并排显示的内容,行号如下:1 Attitude is a little thing that makes a big difference Attitude is a little thing that makes a big difference
2 The only disability in life is a bad attitude Everyone has his burden. What counts is how you carry it
3 Abundance is, in large part, an attitude Abundance is, in large part, an attitude
4 Smile when it hurts most A positive attitude may not solve all your problems