problem using differ
Peter Otten
__peter__ at web.de
Wed Nov 26 16:48:00 EST 2003
Russell wrote:
> I'm trying to automate the comparison of some source code but I'm having
> trouble using the differ object. I'm new to Python so I'm probably doing
> something wrong. I've created a small program (included below) that
> demonstrates my problem. For some reason, Python doesn't recognize
> differ.
> I keep getting this error: NameError: name 'differ' is not defined. What
> am I doing wrong?
>
> Test Code follows:
> import difflib
>
> a=[]
> a.append('1. Beautiful is better than ugly.')
> a.append('2. Explicit is better than implicit.')
> a.append('3. Simple is better than complex.')
> a.append('4. Complex is better than complicated.')
>
> b=[]
> b.append('1. Beautiful is better than ugly.')
> b.append('3. Simple is better than complex.')
> b.append('4. Complicated is better than complex.')
> b.append('5. Flat is better than nested.')
>
> d=differ()
> d.compare(a,b)
You have to tell Python where to find Differ.
Python is case sensitive: Differ != differ.
The compare() method returns a generator which you are discarding, making
the last statement useless.
Assuming you want to print the result, you could write:
d = difflib.Differ()
for line in d.compare(a, b):
print line
Peter
More information about the Python-list
mailing list