1
Amy 原创整理|资料核验:2026-10-30
同一批文件在两次报告里次序不同,先检查脚本是否依赖了目录遍历顺序。
官方资料:pathlib.Path.iterdir()产生的目录项顺序不固定;glob()结果也没有特定顺序。文档同时提醒,迭代创建后若目录发生增删,是否包含这些变动并无保证。
Amy教学示例:只需按文件名排列时,可用sorted(Path('reports').iterdir(), key=lambda p: p.name)。这是示例路径,不会替你执行文件操作。
排序规则要配合任务:按名称并不等于按日期,也不自动实现“第2项排在第10项前”的数字顺序。建议先明确报告需要按名称、时间还是业务编号,再排序;生成清单时还要分清文件与子目录。