Python-文件差异对比

发布时间:2019-09-16 07:33:19编辑:auto阅读(1535)

    一.示例1: 比较text1与text2的差异

    1.import difflib
    text1 = 'hello a b'
    text2 = 'hello  b'
    text1_lines = text1.splitlines()
    text2_lines = text2.splitlines()


    2.创建diff对象,采用compare方法对字符串进行比较

    d = difflib.Differ()
    l = list(d.compare(text1_lines, text2_lines))


    3.print list(diff)
    print '\n'.join(l)文件差异对比


    '-' 包含在第一个中,但不包含在第二个中
    '+' 包含在第二个中,但不包含在第一个中
    ' ' 两者相同
    '?' 两个存在增量差异
    '^' 标志出两者行存在的差异字符文件差异对比


    wKioL1m093DCneAXAAC7vxJ3vXk006.png



    二.示例2:网页显示对比结果
    d = difflib.HtmlDiff()
    print d.make_file(text1_lines, text2_lines)


    1.注:在执行此代码时,python xx.py > diff.html配置文件的差异对比

    wKioL1m0-P-RebiSAABLbYUrGaA941.png


    2.打开python xx.py > diff.html执行后的diff.html文件,有上角有一个对号,选择浏览器打开

    wKioL1m0-TaABodEAADNLNvGaUQ200.png


    3.打开后浏览器显示对比差异结果

    wKiom1m0-X6DnjEfAACoXhKGG10703.png



    三.思考:
    有两个配置文件,通过html页面显示两个配置文件之间的差异。
    思路:
    先读取两个文件的内容;
    比较文件内容的不同,和前面操作没区别。

    1.shell执行python脚本

    wKioL1m0_geAkNg6AADXaUUph00903.png


    2.打开网页

    wKioL1m0_d6iVFLjAAF5tBwxGLA145.png


    3.对比结果

    wKioL1m0_iTTaWegAADRqoTkPEg613.png



    其他方法:

    wKiom1m0_TPBlmyyAACP_sDa3ws572.png







关键字

上一篇: python classmethod和

下一篇: python:Queue模块