我有一个列表,包含某些行。我想要打印匹配词的行' good'最高模糊度。
问题:它唯一的打印字而不是列表中的行
编码:
from fuzzywuzzy import fuzz
c = ['I am python', 'python is good', 'Everyone are humans']
print(max(c, key=lambda a: fuzz.ratio(a, 'good')))
预期产出:
python is good
我从列表中得到一个单词而不是最高模糊值的行。请帮忙修复我的代码!答案将不胜感激!
答案 0 :(得分:0)
您的代码似乎没问题,很可能您的c
数组未正确初始化并包含单词而不是句子。
您的代码应与此类似:
from fuzzywuzzy import fuzz
c = ['I am python', 'python is good', 'Everyone are humans']
print(max(c, key=lambda a: fuzz.ratio(a, 'good')))
答案 1 :(得分:0)
from fuzzywuzzy import fuzz
c = ['I am python', 'python is good', 'Everyone are humans']
l = [(i,fuzz.ratio(i,'good')) for i in c]
l.sort(key=lambda a: a[1], reverse=True)