Python extension computing string distances and similarities
The Levenshtein Python C extension module contains functions for fast
computation of
* Levenshtein (edit) distance, and edit operations
* string similarity
* approximate median strings, and generally string averaging
* string sequence and set similarity
It supports both normal and Unicode strings.
Python 2.2 or newer is required.
StringMatcher.py is an example SequenceMatcher-like class built on the top of
Levenshtein. It misses some SequenceMatcher's functionality, and has some extra
OTOH.
Levenshtein.c can be used as a pure C library, too. You only have to define
NO_PYTHON preprocessor symbol (-DNO_PYTHON) when compiling it. The
functionality is similar to that of the Python extension. No separate docs are
provided yet, RTFS. But they are not interchangeable:
* C functions exported when compiling with -DNO_PYTHON (see Levenshtein.h) are
not exported when compiling as a Python extension (and vice versa)
* Unicode character type used with -DNO_PYTHON is wchar_t, Python
extension uses Py_UNICODE, they may be the same but don't count on it
Authors:
--------
mFabrik Research Oy
- Devel package for openSUSE:Factory
-
3
derived packages
- Links to openSUSE:Factory / python-Levenshtein
- Has a link diff
- Download package
-
Checkout Package
osc -A https://api.opensuse.org checkout devel:languages:python/python-Levenshtein && cd $_
- Create Badge
Source Files (show unmerged sources)
Filename | Size | Changed |
---|---|---|
Levenshtein-0.25.1.tar.gz | 0000149954 146 KB | |
python-Levenshtein.changes | 0000008108 7.92 KB | |
python-Levenshtein.spec | 0000002028 1.98 KB |
Latest Revision
- Update to version 0.25.1 * Fix potentially incorrect results of `jaro_winkler` when using high prefix weights - from version 0.25.0 * Improve type hints - from version 0.24.0 * Upgrade ``rapidfuzz-cpp`` to ``v3.0.0`` - Drop support for Python 3.7 - from version 0.23.0 * Added keyword argument `pad` to Hamming distance. This controls whether sequences of different length should be padded or lead to a `ValueError` * Upgrade to `Cython==3.0.3` - from version 0.22.0 * Add support for Python 3.12 * Drop support for Python 3.6 * Add wheels for windows arm64 - from version 0.21.1 * Upgrade ``rapidfuzz-cpp`` to ``v2.0.0`` - from version 0.21.0 * Relax dependency requirement on ``rapidfuzz`` - from version 0.20.9 * Fix function signature of `get_requires_for_build_wheel` - from version 0.20.8 - Type hints for `editops`/`opcoded`/`matching_blocks` did not allow any hashable sequence - from version 0.20.7 - Type hints did not get installed - from version 0.20.6 - Fix incorrect result normalization in `setratio` and `seqratio`
Comments 0