patiencediff算法的python实现。
patiencediff的Python项目详细描述
此包包含patiencediff算法的实现,如下所示 first described作者bram cohen。
像python的difflib一样,这个模块提供了一个方便的unified_diff 生成文本文件统一差异的函数 以及可用于任意列表的SequenceMatcher。
PatienceDiff为人类提供了良好的性能平衡和良好的输出, 实现简单。
这个包中的代码是从Bazaar 代码库。
该软件包有两种实现方式:
- python实现(_patiencediff_py.py);仅此实现 需要一个python解释器,是这两个解释器的可读性更强的版本
- 一个c实现实现(_patiencediff_c.c);这个实现 速度更快,但需要C编译器,可读性较差
用法
从命令行调用patiencediff:
python -m patiencediff file_a file_b
或者来自python:
>>> import patiencediff >>> print ''.join(patiencediff.unified_diff( ... ['a\n', 'b\n', 'b\n', 'c\n'], ... ['a\n', 'c\n', 'b\n'])) --- +++ @@ -1,4 +1,3 @@ a +c b -b -c