Language: Python

Neil Fraser edited this page Feb 10, 2018 · 1 revision

Each language port of Diff Match Patch uses the same API. These are the language-specific notes regarding Python.

Python comes in two incompatible flavours; Python 2 and Python 3. Choose the version that's compatible with your interpreter. Python 2 is somewhat faster than Python 3. Type python --version to find out which version your system has installed.

Hello World

Here's a minimal example of a diff in Python:

import diff_match_patch as dmp_module

dmp = dmp_module.diff_match_patch()
diff = dmp.diff_main("Hello World.", "Goodbye World.")
# Result: [(-1, "Hell"), (1, "G"), (0, "o"), (1, "odbye"), (0, " World.")]
dmp.diff_cleanupSemantic(diff)
# Result: [(-1, "Hello"), (1, "Goodbye"), (0, " World.")]
print(diff)

Go to the python2 or python3 directory and save the above program as hello.py. Then execute python hello.py.

Tests

Unit tests can be performed from the python/tests directory by executing python diff_match_patch_test.py. Over twenty test groups should run, with zero failures.

Speed test for diff can be performed from the python/tests directory by executing python speedtest.py. It takes about 20 seconds.

You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.
Press h to open a hovercard with more details.