fuzzywuzzy库是Python中的模糊匹配库,它依据 Levenshtein Distance 算法 计算两个序列之间的差异。
Levenshtein Distance 算法,又叫 Edit Distance 算法,是指两个字符串之间,由一个转成另一个所需的最少编辑操作次数。许可的编辑操作包括将一个字符替换成另一个字符,插入一个字符,删除一个字符。一般来说,编辑距离越小,两个串的相似度越大。
安装
使用 PIP 通过 PyPI 安装
pip install fuzzywuzzy
用法
>>> from fuzzywuzzy import fuzz >>> from fuzzywuzzy import process
简单匹配(Simple Ratio)
>>> fuzz.ratio("this is a test", "this is a test!") 97
非完全匹配(Partial Ratio)
>>> fuzz.partial_ratio("this is a test", "this is a test!") 100
忽略顺序匹配(Token Sort Ratio)
>>> fuzz.ratio("fuzzy wuzzy was a bear", "wuzzy fuzzy was a bear") 91 >>> fuzz.token_sort_ratio("fuzzy wuzzy was a bear", "wuzzy fuzzy was a bear") 100
去重子集匹配(Token Set Ratio)