Python difflib:内联突出显示差异?

Python difflib:内联突出显示差异?,第1张

Python difflib:内联突出显示差异?

对于您的简单示例

import difflibdef show_diff(seqm):    """Unify operations between two compared stringsseqm is a difflib.SequenceMatcher instance whose a & b are strings"""    output= []    for oppre, a0, a1, b0, b1 in seqm.get_oppres():        if oppre == 'equal': output.append(seqm.a[a0:a1])        elif oppre == 'insert': output.append("<ins>" + seqm.b[b0:b1] + "</ins>")        elif oppre == 'delete': output.append("<del>" + seqm.a[a0:a1] + "</del>")        elif oppre == 'replace': raise NotImplementedError, "what to do with 'replace' oppre?"        else: raise RuntimeError, "unexpected oppre"    return ''.join(output)>>> sm= difflib.SequenceMatcher(None, "lorem ipsum dolor sit amet", "lorem foo ipsum dolor amet")>>> show_diff(sm)'lorem<ins> foo</ins> ipsum dolor <del>sit </del>amet'

这适用于字符串。您应该决定如何处理“替换” *** 作码。



欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zaji/5642741.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-12-16
下一篇2022-12-16

发表评论

登录后才能评论

评论列表(0条)

    保存