通过下划线将文件名分割为名称、指令类型、执行次数三部分,根据第一部分名称的排序生成xlsx文件
def excel_generate(imag_dir, excel_dir):
# 获取当前工作目录中的所有文件
files = os.listdir(imag_dir)
# 根据指定的模式过滤文件
filtered_files = [file for file in files if file.endswith('.png')]
# 从文件名中提取信息
data = []
for file in filtered_files:
parts = file[:-4].split('_') # 去掉 '.png' 并按下划线分割
name, instruction_type, execution_count = parts[0], parts[1], int(parts[2])
data.append({'文件名': imag_dir + file, '指令类型': float(instruction_type), '执行次数': execution_count, '名称': name})
# 从收集的数据创建一个 DataFrame
df = pd.DataFrame(data)
# 将 '名称' 列转换为数字并根据它进行排序
df['名称'] = pd.to_numeric(df['名称'], errors='coerce') # 将非数字值转为 NaN
df.sort_values(by='名称', inplace=True)
# 删除指定列
column_to_remove = '名称'
df = df.drop(column_to_remove, axis=1)
# 将 DataFrame 保存到 Excel 文件
df.to_excel(excel_dir, index=False)