快速实现编辑距离(Levenshtein 距离)
快速实现编辑距离(Levenshtein 距离)。 此库仅使用 C++ 和 Cython 实现 Levenshtein 距离。 本库中使用的算法是由
这要归功于 pypa/cibuildwheel Linux、Mac OS 和 Windows 上都有二进制车轮。
您可以通过 pip 安装:
pip install editdistance很简单:
import editdistance
editdistance.eval('banana', 'bahama')
# 2L使用 IPython,我尝试了几个库:
a = 'fsffvfdsbbdfvvdavavavavavava'
b = 'fvdaabavvvvvadvdvavavadfsfsdafvvav'
import pylev
timeit pylev.levenshtein(a, b)
# 100 loops, best of 3: 7.48 ms per loop
from pyxdameraulevenshtein import damerau_levenshtein_distance
timeit damerau_levenshtein_distance(a, b)
# 100000 loops, best of 3: 11.4 µs per loop
timeit editdistance.eval(a, b) # my library
# 100000 loops, best of 3: 3.5 µs per loop
import Levenshtein
timeit Levenshtein.distance(a, b)
# 100000 loops, best of 3: 3.21 µs per loop上述库仅支持字符串。但有时还支持其他类型的对象,如字符串列表(单词)。我支持任何可迭代对象,只需要其可哈希的对象:
暂无开放 Issues,或尚未同步最近议题。