假设给定单词列表['windows','hello','python','world','software','desk']
和输入单词'widow'
,如何(快速(从单词列表中找到与输入单词'widow'
具有最小编辑距离的单词(本例中的答案是'windows'
(?是否有可用的库/功能来实现它?谢谢
内置difflib
import difflib
difflib.get_close_matches("widow", lst, n=1)
#out: ['windows']
这里有python Levenstein库。distance()
函数就是您想要的。
关于名单,我会做:
input = "widow"
words = ['windows','hello','python','world','software','desk']
distances = [distance(input, word) for word in words]
closest = words[distances.index(min(distances)]
您必须处理两个单词的输入距离相同的情况。