user2671444
user2671444

Reputation: 15

Python how to retrieve list of changes by new additional contents, changes contents and deleted contents

I have ascii plain text file 1 (old file) and ascii plain text file 2 (new file with some changes done to file 1).

Is there anyway in python script can list out differences by category additional text added, deleted contents and changes contents when comparison done between file 1 and file 2.

Upvotes: 0

Views: 99

Answers (1)

6160
6160

Reputation: 1002

I think you need to use difflib.Differ to do that: http://docs.python.org/2/library/difflib.html

if you google "difflib.Differ Example" you'll find plenty of examples that will help you.

edit: here's an example

text1 = """Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Integer
eu lacus accumsan arcu fermentum euismod. Donec pulvinar porttitor
tellus. Aliquam venenatis. Donec facilisis pharetra tortor.  In nec"""
text1_lines = text1.splitlines()

text2 = """Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Integer
eu lacus accumsan arcu fermentum euismod. Donec pulvinar, porttitor
tellus. Aliquam venenatis. Donec facilisis pharetra tortor. In nec"""
text2_lines = text2.splitlines()

import difflib

d = difflib.Differ()
diff = d.compare(text1_lines, text2_lines)
print '\n'.join(diff)

result:

  Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Integer
- eu lacus accumsan arcu fermentum euismod. Donec pulvinar porttitor
+ eu lacus accumsan arcu fermentum euismod. Donec pulvinar, porttitor
?                                                         +

- tellus. Aliquam venenatis. Donec facilisis pharetra tortor.  In nec
?                                                             -

+ tellus. Aliquam venenatis. Donec facilisis pharetra tortor. In nec

Upvotes: 1

Related Questions