Python对比两个txt文件内容

Posted 文帅哥哥

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python对比两个txt文件内容相关的知识,希望对你有一定的参考价值。

difflib模块作为python的标准库模块,无需安装,作用是比对文本之间的差异,且支持输出可读性比较强的html格式。


#!coding=utf-8 # 2018-9-19 import sys import difflib # 读取配置文件函数 def read_file(file_name): try: file_handle = open(file_name, \'r\') text = file_handle.read().splitlines() # 读取后以行进行分割 file_handle.close() return text except IOError as error: print \'Read file Error: {0}\'.format(error) sys.exit() # 比较两个文件并输出html格式的结果 def compare_file(file1_name, file2_name): if file1_name == "" or file2_name == "": print \'文件路径不能为空:file1_name的路径为:{0}, file2_name的路径为:{1} .\'.format(file1_name, file2_name) sys.exit() text1_lines = read_file(file1_name) text2_lines = read_file(file2_name) diff = difflib.HtmlDiff() # 创建htmldiff 对象 result = diff.make_file(text1_lines, text2_lines) # 通过make_file 方法输出 html 格式的对比结果 # 将结果保存到result.html文件中并打开 try: with open(\'result.html\', \'w\') as result_file: #同 f = open(\'result.html\', \'w\') 打开或创建一个result.html文件 result_file.write(result) #同 f.write(result) except IOError as error: print \'写入html文件错误:{0}\'.format(error) if __name__ == "__main__": compare_file(r\'D:\\a.txt\', r\'D:\\b.txt\') #传入两文件的路径

对比结果如下

 

 

以上是关于Python对比两个txt文件内容的主要内容,如果未能解决你的问题,请参考以下文章

python-文件内容差异对比

Python如何实现从txt文件中所有两个特殊字符间的内容进行查找一个指定字符串?

python 如何把多个文件内容合并到以一个文件

使用python实现两个文件夹里文件的对比(包含内容的对比)

linux比较两个文件

别再手动比对文件啦,Python 让你轻松实现文件内容以及目录对比!!!