2

我打算用来SequenceMatcher(...).ratio()检查两个字符串是否相似。但是,我的快速测试返回了我没想到的结果(这对我的目的不起作用):

>>> SequenceMatcher(None, 'abqab', 'abcab').ratio()
0.8
>>> SequenceMatcher(None, 'abqabc', 'abcabc').ratio()
0.5

具有相同错误数的较长字符串应该具有相等或更低的比率,对吗?

4

1 回答 1

0

abc 和 abq 只有 3 个字母,几乎匹配,所以这是正确的。不同的较长字符串按预期执行。

>>> SequenceMatcher(None, 'abqdef', 'abcdef').ratio()
0.83333333333333337
于 2014-06-04T20:07:46.647 回答