python - 在 python 中生成和应用差异

标签 python diff revision difflib

python 中是否有一种“开箱即用”的方式来生成两个文本之间的差异列表,然后将此差异应用于一个文件以获取另一个文件?

我想保留文本的修订历史,但如果只有一个编辑行,我不想保存每个修订的整个文本。我看了difflib ,但我看不到如何生成仅包含已编辑行的列表,这些行仍可用于修改一个文本以获取另一个文本。

最佳答案

你看过谷歌的 diff-match-patch 吗?显然 google Docs 使用了这组算法。它不仅包含差异模块,还包含补丁模块,因此您可以从旧文件和差异中生成最新文件。

包含一个 python 版本。

http://code.google.com/p/google-diff-match-patch/

关于python - 在 python 中生成和应用差异,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2307472/

相关文章:

python - 如果处理了错误,则While循环跳过一个循环。如何使其在整个周期的剩余时间内运行?

python - 使用 Python 删除多余的空行

文本比较算法

command-line - Phabricator:奥术师:arc diff --update:未发现任何更改

python - Pandas .errors.EmptyDataError : No columns to parse from file

python - 手动制作的 3D 卷积神经网络的形状误差

c# - 简单词差异算法

Mercurial - 变更集中更改的所有文件?

mysql - 行级修订查询 MySQL

rdf - 带修订版的三元组