python 两个txt文件内容对比,difflib的使用

1.先导包
import difflib
import sys
2.定义给一个读取数据的函数,传入需要做对比的文件的绝对路径,然后return返回读取的的数据,一定要用readlines()方法,因为他的结果会把文档每一行的数据包括空格换行等都返回,是一个list类型
# 定义函数读取
def read_file(file):
    try:
        with open(file,'r',encoding='utf-8') as f:
            return f.readlines()
    except IOError      :
        print('未找到该文件')
        sys.exit(1)
做对比,并把对比文件输出为html格式,
def compare_files(file1,file2,out_file):
    file1_content=read_file(file1)
    file2_content=read_file(file2)
    dh = difflib.HtmlDiff()
    result=dh.make_file(file1_content,file2_content)
    with open(out_file,'w') as f:
        f.writelines(result)
最后运行,传入需要对比的两个文件的绝对路径file1和file2,并输出到abc.html
compare_files(file1='F:\Python\DatacomTest\HCIP\SSH\sta.txt',
              file2='F:\Python\DatacomTest\HCIP\SSH\end.txt',
              out_file=r'F:\Python\DatacomTest\HCIP\SSH\abc.html')
过程需要多久的话得看你文件大不大,一般几百行大概几秒钟的事情,然后用浏览器打开abc.html,查看输出情况,这种带有颜色的区域,就是有差异的区域,中间这个字母n可以点击,点击就是跳转到下一个不同的点,到这儿的话整个过程就结束了

在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值