python 中的字符串编辑距离

String edit distance in python

我需要检查 python 中两个字符串之间的字符串距离(测量最小更改次数 - 字符删除、添加和转置)是否大于 1。

我可以自己实现它,但我敢打赌,现有的软件包可以避免我自己实现它。我找不到任何可以识别为常用的此类软件包。有吗?

您需要的相应算法有很多实现:以下属于一个文档齐全的库,称为 NLTK。

https://www.nltk.org/_modules/nltk/metrics/distance.html

是的。 strsimpy可以用。在这里查看 - https://pypi.org/project/strsimpy/ 希望这就是您要找的。

有一个 NLTK 包可供您使用,它使用 Levenshtein 编辑距离,这应该是您正在寻找的。

示例:

import nltk
s1 = "abc"
s2 = "ebcd"
nltk.edit_distance(s1, s2) # output: 2

参考: https://tedboy.github.io/nlps/generated/generated/nltk.edit_distance.html