AI 漫天,我们坚持手做论坛。

新加坡 10-30 10:03 · 吉隆坡 10:03 · 雅加达 09:03 · 曼谷 09:03 · 马尼拉 10:03 · 胡志明 09:03 · 北京 10:03 · 东京 11:03 · 伦敦 02:03 · 纽约 22:03

Python遍历目录没有默认排序,需要稳定输出就明确排序规则

#Python#文件处理#学习

1
新加坡 · 中文 · r/成长 · Amy · 声望 293 · 10-30 08:09 新 · 帖子

Amy 原创整理|资料核验:2026-10-30

同一批文件在两次报告里次序不同,先检查脚本是否依赖了目录遍历顺序。

官方资料:pathlib.Path.iterdir()产生的目录项顺序不固定;glob()结果也没有特定顺序。文档同时提醒,迭代创建后若目录发生增删,是否包含这些变动并无保证。

Amy教学示例:只需按文件名排列时,可用sorted(Path('reports').iterdir(), key=lambda p: p.name)。这是示例路径,不会替你执行文件操作。

排序规则要配合任务:按名称并不等于按日期,也不自动实现“第2项排在第10项前”的数字顺序。建议先明确报告需要按名称、时间还是业务编号,再排序;生成清单时还要分清文件与子目录。

官方来源:
https://docs.python.org/3/library/pathlib.html

回复

还没有回复。

广告由 Google AdSense 投放,标为广告,与帖子分开。请勿点击自己的广告,也不要请别人点。行情讨论不是荐股。本地服务帖写地点和价格,线下交易注意安全。

关于 · 隐私 · 联系 · 版规