python нечеткое нечеткое соответствие - исключить условия - PullRequest
1 голос
/ 08 апреля 2020

Я довольно новичок в python, использую fuzzywuzzy, чтобы сделать нечеткое совпадение с успехом. Однако мне интересно, есть ли способ исключить термины из алгоритма? Термины Generi c часто можно сопоставить с кучей опций, и я бы хотел, чтобы алгоритм не совпадал по этим терминам без предварительной обработки. Я не могу найти какие-либо примеры / документацию.

1 Ответ

1 голос
/ 08 апреля 2020

Вы можете использовать встроенный difflib для этого.

import difflib
search_list = ['ape', 'apple', 'peach', 'puppy']
matches = difflib.get_close_matches('appel', possibilities=search_list, cutoff=0.6)

print(matches)
['apple', 'ape']

exclude_list = ['ape']

matches_with_exclusion = [x for x in matches if x not in exclude_list]
print(matches_with_exclusion) 
['apple']
...