Levenshtein距离给出奇怪的值
这是一个字符串T:
'男士衬衫团队 brienne 有趣的讽刺衬衫具有图形 T 恤杯子 婴儿装 真正的激情 辉煌的设计 详细的插图 强烈的欣赏 东西 创意 br 商店 在不同的衬衫上发现了数千种设计 婴儿装杯子 有趣的流行文化 抽象 诙谐 很多设计使一天好起来 几乎所有其他人都会遇到 ul li 质量短袖圆领衬衫 100 棉柔软耐用舒适手感合身标准尺寸怀疑 l xl 可用 li li 可持续性标签公司构想的信念纺织品行业开始采取行动,负责任地制造棉 li li 服装使用 state art 直接服装设备印刷裂纹剥离水洗 li li图形 T 恤设计专业印刷独特的设计看起来很棒让人微笑有趣可爱的复古富有表现力的艺术品 li ul'
我已经突出显示了上面字符串的一部分,因为上面是字符串的预处理版本,因此可能难以阅读。
我得到以下值:
fuzz.partial_ratio('short sleeve', T) 给 50
fuzz.partial_ratio('long sleeve', T) 给 73
fuzz.partial_ratio('dsfsdf sleeve', T) 给 62
fuzz.partial_ratio('sleeve', T) 给 50
我对此感到非常困惑。第一个和第四个值不应该是 100 吗?当然我错过了一些东西,但我无法弄清楚。
编辑:这是我在卸载 python-Levenshtein 库后运行的另一个示例:
'第一个成功方式妻子告诉 v 2 长袖衬衫 id 1084 第一个成功方式妻子告诉 v 2 长袖衬衫设计印刷质量 100 长袖棉衬衫运动灰色 90 棉 10 涤纶标准长袖衬衫时尚合身紧身款式请查看尺码表列出的附加图片随时与我们联系 第一尺寸问题 满意度 100 件保证衬衫通常在工作日中午 est 下订单 下一个工作日中午 est 长袖衬衫 100 件棉质标准衬衫 时尚合身 合并运输多个项目
fuzz.partial_ratio('long sleeve', T) 给出 27
fuzz.partial_ratio('short sleeve', T) 给 33
fuzz.partial_ratio('sleeveless', T) 给 40
fuzz.partial_ratio('dsfasd sleeve', T) 给 23
不幸的是,这个问题似乎不是 python-Levenshtein 库独有的。