概述
#计算两个中文字符串的编辑距离
def levenshtein(string1,string2):
if len(string1) > len(string2):
string1,string2 = string2,string1
if len(string1) == 0:
return len(string2)
if len(string2) == 0:
return len(string1)
str1_length = len(string1) + 1
str2_length = len(string2) + 1
distance_matrix = [range(str2_length) for x in range(str1_length)]
#print distance_matrix
for i in range(1,str1_length):
for j in range(1,str2_length):
deletion = distance_matrix[i-1][j] + 1
insertion = distance_matrix[i][j-1] + 1
substitution = distance_matrix[i-1][j-1]
if string1[i-1] != string2[j-1]:
substitution += 1
distance_matrix[i][j] = min(insertion,deletion,substitution)
#print distance_matrix
return distance_matrix[str1_length-1][str2_length-1]
最后
以上就是和谐乐曲为你收集整理的python--计算两个中文字符串的编辑距离的全部内容,希望文章能够帮你解决python--计算两个中文字符串的编辑距离所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复