在Python中使用difflib比较两个.txt文件


问题内容

我正在尝试比较两个文本文件,并在比较文件中输出不匹配的第一个字符串,但是由于我对python非常陌生而遇到了困难。谁能给我一个使用此模块的示例方法。

当我尝试类似的东西:

result = difflib.SequenceMatcher(None, testFile, comparisonFile)

我收到一个错误消息,说“文件”类型的对象没有len。


问题答案:

对于初学者,您需要将字符串传递给difflib.SequenceMatcher,而不是文件:

# Like so
difflib.SequenceMatcher(None, str1, str2)

# Or just read the files in
difflib.SequenceMatcher(None, file1.read(), file2.read())

无论如何,这将解决您的错误。为了获得第一个不匹配的字符串,我将带您进入difflib文档的美好世界