python打印文件中的最大行模糊比率
我正在尝试一个python代码,以查找文本文件中所有带有“good”一词的行的最大模糊比率,将打印具有最大模糊比率的行。我尝试了一个程序:python打印文件中的最大行模糊比率,python,Python,我正在尝试一个python代码,以查找文本文件中所有带有“good”一词的行的最大模糊比率,将打印具有最大模糊比率的行。我尝试了一个程序: from fuzzywuzzy import fuzz from collections import defaultdict with open(qwer.txt, 'r') as my_file: for line in my_file: for part in line.split(): a=line
from fuzzywuzzy import fuzz
from collections import defaultdict
with open(qwer.txt, 'r') as my_file:
for line in my_file:
for part in line.split():
a=line
b='good'
fuzziness = fuzz.ratio(a,b)
filenames2fuzz[line].append(fuzziness)
best_fuzziness_ratio = 0
for k, v in filenames2fuzz.items():
if max(v) > best_fuzziness_ratio:
best_fuzzy_line = k
best_fuzziness_line_ratio = max(v)
print(best_fuzzy_line)
例如:
qwer.txt有1000多行
.................
I love God
he is a goody boy
.............
输出:
he is a goody boy
请帮助我获取输出一个简短的解决方案可能是以下形式:
def good_ratio(a):
return fuzz.ratio(a, 'good')
with open('qwer.txt', 'r') as my_file:
print(max(my_file, key=good_ratio))
甚至更短
with open('qwer.txt', 'r') as my_file:
print(max(my_file, key=lambda a: fuzz.ratio(a, 'good')))
哦,我没注意就复制粘贴了这部分。用引号可能更好。我编辑了。我会给你评分的!你找到我的答案了!还请回答如何找到所有文件的平均模糊比率/我将分别提供一个新问题!请回答我的问题:关于如何找到所有模糊线的平均值。我正在等待你对我的新问题的答复!请帮忙!