将一个文件夹下的文件读出
并将文件名称中的数字进行提取
文件数据格式如下:
python代码
import os
from itertools import chain
import re
path = "parameters"
file_list = []
loss_list = []
# 读入路径中的文件名称
for i, j, k in os.walk(path):
file_list.append(k)
# 将二维转一维
file_list = list(chain.from_iterable(file_list))
# 正则化匹配整数数字字段(规则一)
int_digital = re.compile(r"-\d+-", re.I)
# 正则化匹配浮点数数字字段(规则二)
float_digital = re.compile(r"\d\.\d+", re.I)
for i in file_list:
# 按第一个规则查找整数数数字
hidden_digital = re.findall(int_digital, i)
# 将列表转成字符串
hidden_digital = ''.join(hidden_digital)
# 删除非数字内容
hidden_digital = re.sub(r'\D', "", hidden_digital)
# 按第二个规则查找浮点数数字
loss_digital = re.findall(float_digital, i)
# 找出loss数值
loss_digital = ''.join(loss_digital[1])
# 将对应的隐藏层数字与对应的loss放入列表中
loss_list.append([hidden_digital, loss_digital])
# 将字符串转为数字
x = []
y = []
for i in loss_list:
x.append(int(i[0]))
y.append(float(i[1]))
# 将内容输出出来
for i in range(len(x)):
print("{}\t{}".format(x[i], y[i]))
输出结果