difflib.ndiff broken?

Humpdydum oliver.schoenborn at utoronto.ca
Thu Jul 15 16:56:24 EDT 2004


Can anyone try the following in their python interpreter?

These give correct output:

>>> print list(ndiff(['saving2 <<A'],['saving <<a>>']))
['- saving2 <<A', '?       -   ^\n', '+ saving <<a>>', '?          ^^^\n']
>>> print list(ndiff(['saving2 <<AA'],['saving <<a>>']))
['- saving2 <<AA', '?       -   ^^\n', '+ saving <<a>>', '?          ^^^\n']
>>> print list(ndiff(['saving2 <<A'],['saving <<aa>>']))
['- saving2 <<A', '?       -   ^\n', '+ saving <<aa>>', '?          ^^^^\n']
>>> print list(ndiff(['saving <<A'],['saving <<aa>>']))
['- saving <<A', '?          ^\n', '+ saving <<aa>>', '?          ^^^^\n']

Now try the very slight variations:

>>> print list(ndiff(['saving2 <<AA'],['saving <<aa>>']))
['- saving2 <<AA', '+ saving <<aa>>']
>>> print list(ndiff(['saving2 <<AA'],['saving <<aa>>']))
['- saving2 <<AA', '+ saving <<aa>>']

This can't be right... or is it? Where are the '? ...' lines? It does this
for both Python 2.3.2 on Windows 2000 and Python 2.3.3 on SGI. If it's
correct, how come???

Oliver





More information about the Python-list mailing list