gpt4 book ai didi

python - 比较文件内容

转载 作者:太空宇宙 更新时间:2023-11-04 10:31:28 27 4
gpt4 key购买 nike

我有一个生成多个输出文件的脚本(例如:out0.txt 到 out250.txt),我希望能够比较所有文件中的特定值并输出所有文件中前 10 个最高的特定值

例如,在这些输出文件中的每一个中都有包含各种数据的多行,我感兴趣的行是那些在其自己的行中包含匹配统计信息的行。以下是其中一个文件的示例摘录。

 ....
Score
Matches: 592 (52.3%) #the 52.3 part of the 592 portion
Ref: 1 GT......
Query: 340
Matches: 584 (54.5%) #and this for 54.3

具体来说,我对百分比部分感兴趣,因为我想只显示所有文件中前 10 个最高百分比。

我在特定数据之前/采取了拆分文件,但通常依赖于行号。不幸的是,这些“匹配”线的位置有点不规则,不是每 3 条线左右。

我是否应该尝试让程序查找 % 符号旁边的数字,考虑到这是文件输出信息中唯一提供数字的部分?

简而言之,如何在其他字符串输出中仅从所有文件中提取百分比部分的值,然后进行比较并输出最高的 10 个值?

谢谢,

最佳答案

import re

def get_values_from_file(filename):
f = open(filename)
winpat = re.compile("([\d\.]+)\%")

values = []
for line in f.readlines():
if line.find("Matches") >=0:
percn = float(winpat.findall(line)[0])
values.append(percn)

return values

all_values = []
for filename in ["out0.txt", "out1.txt"]:
values = get_values_from_file(filename)
all_values += values

all_values.sort()
all_values.reverse()
print(all_values[0:10])

关于python - 比较文件内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26229301/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com