我正在寻找一种基于纪元标识符删除额外文件的方法。当我提取一堆报告时,有一些报道具有相同的名称但具有独特的时代。我想删除前一个,只保留目录中所有文件的最新报告。
离)
任何帮助都将不胜感激。
答案 0 :(得分:1)
您可以使用set
跟踪已经看过的文件名。然后可以删除任何重复项。
seen = set()
for file in sorted(os.listdir('/path/to/your/reports'), reverse=True):
filename = file.rsplit('-', 1)[0]
if filename not in seen:
seen.add(filename)
else:
os.unlink(file)
您可以使用os.unlink
删除附加内容。
感谢@Błotosmętek:您将按降序对文件进行排序,以保证只保留最新的报告。