利用python 计算两个字符串(非长文本)的相似距离往往会使用到一个工具包Levenshtein,它里面会包含各种距离的计算方式,距离越小两个字符串越相似。下面来举例说明一下。
1 hamming 距离
限制条件为:比较的两个字符串长度必须一致
n1 = 'hello'
n2 = 'world'
distance = Levenshtein.hamming(n1, n2)
print(distance)
# 结果为4
2 编辑距离
也就是从字符串1经过几次增删改能变为字符串2,这个次数就是距离。
n1 = 'hello'
n2 = 'world'
d = Levenshtein.distance(n1, n2)
# 结果同样为4
3 Levenshtein比
d = Levenshtein.distance(n1, n2)
4 jaro距离
Levenshtein.jaro(n1, n2)
5 jaro_winkler 距离
Levenshtein.jaro_winkler (n1, n2)