Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/365.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
python打印文件中的最大行模糊比率_Python - Fatal编程技术网

python打印文件中的最大行模糊比率

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

我正在尝试一个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
          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')))

哦,我没注意就复制粘贴了这部分。用引号可能更好。我编辑了。我会给你评分的!你找到我的答案了!还请回答如何找到所有文件的平均模糊比率/我将分别提供一个新问题!请回答我的问题:关于如何找到所有模糊线的平均值。我正在等待你对我的新问题的答复!请帮忙!