标签: python fuzzywuzzy
我正在使用Fuzzywuzzy进行模糊匹配,并期望fuzz.ratio在独立使用时与在流程模块中用作“得分”参数时能达到相同/产生相同的结果。但是,事实并非如此。
我尝试过独立使用所有其他得分手,以及在process.extract中对其进行测试,并得出相同的结果。
fuzz.ratio('So','SO) >> 50
在过程模块中使用以下比较项时:
...process.extract('So',['SO']) >> 100
答案 0 :(得分:0)
如果您查看源代码here和here,似乎process.extract()会强制将所有内容转换为小写,而直接运行fuzz.ratio()不会。
process.extract()
fuzz.ratio()
如果使用标志processor=None,则会获得预期的结果。
processor=None
process.extract('So', ['SO'], processor=None, scorer=fuzz.ratio) >> [('SO', 50)]