VeePee VeePee - 1 month ago 15
Python Question

Comparing two .txt files using difflib in Python

I am trying to compare two text files and output the first string in the comparison file that does not match but am having difficulty since I am very new to python. Can anybody please give me a sample way to use this module.

When I try something like:

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


I get an error saying object of type 'file' has no len.

Answer

For starters, you need to pass strings to difflib.SequenceMatcher, not files:

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

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

That'll fix your error anyway. To get the first non-matching string, I'll direct you to the wonderful world of difflib documentation.