确定文档与Python的不同之处

我一直在使用Python difflib库来查找2个文档的不同之处. Differ().compare()方法执行此操作,但速度非常慢 – 与diff命令相比,大型HTML文档至少慢100倍.

如何有效地确定Python中2个文档的不同之处? (理想情况下,我是在位置而不是实际文本,这是SequenceMatcher().get_opcodes()返回的位置.)

解决方法:

a = open("file1.txt").readlines()
b = open("file2.txt").readlines()
count = 0
pos = 0

while 1:
    count += 1
    try:
        al = a.pop(0)
        bl = b.pop(0)
        if al != bl:
            print "files differ on line %d, byte %d" % (count,pos)
        pos += len(al)
    except IndexError:
        break
上一篇:Dictionary、hash桶


下一篇:Python入门之时间模块、datetime模块 、difflib文件对比模块、sys模块