安装python-levenshtein
查询的字符串是模糊的,但字典中的是准确的,可以用莱文斯坦相似度计算一下字符串之间的相似度(但专业术语只能硬匹配,相似度计算可能不准确,试一下)
莱文斯坦相似度:莱文斯坦距离(LD)用于衡量两个字符串之间的相似度。 以下我们称这两个字符串分别为 s (原字符串) 和 t (目标字符串)。莱文斯坦距离被定义为”将字符串 s 变换为字符串 t 所需的删除、插入、替换操作的次数”
import Levenshtein
class TextAnalyse:
def LevenshiteinSimilarity(self,string1,string2):
return Levenshtein.ratio(string1,string2)
def similay(self,string1,string2):
similar = self.LevenshiteinSimilarity(string1,string2)
return similar
if __name__ == '__main__':
t = TextAnalyse()
print(t.similay('效果','效率'))
得出结果是0.5
这种方法只是从表面理解字符串意思,效果一般