import os
from collections import defaultdict
# 指定目录路径和文件名前缀
dir_path = "/path/to/directory"
file_prefix = "prefix_"
# 从指定目录中获取所有文件列表
all_files = os.listdir(dir_path)
# 创建字典来存储各个文件名前缀对应的文件列表
file_dict = defaultdict(list)
# 遍历所有文件,将文件按文件名前缀分组存储
for file in all_files:
if file.startswith(file_prefix):
file_prefix = file.split("_")[0]
file_dict[file_prefix].append({"name": file, "modified_time": os.path.getmtime(os.path.join(dir_path, file))})
# 获取每个文件名前缀对应的最新文件
latest_files = []
for prefix, files in file_dict.items():
latest_file = max(files, key=lambda x: x["modified_time"])
latest_files.append(latest_file["name"])
# 打印最新文件列表
print(latest_files)
这段代码将指定目录中的所有文件按文件名前缀进行了分组,并存储在以文件名前缀为键的字典中。然后对每个文件名前缀的文件列表进行遍历,获取最新的文件信息,并将最新文件的文件名存储在一个列表中返回。
上一篇:按文件名对列表进行排序
下一篇:按文件名对文件路径数组进行排序