还有个小坑我会顺手留意:如果目录里偶尔有读不到的项,sorted(root.iterdir()) 还是可能被中途打断。临时脚本里我更倾向先只取名字,或者外面包一下异常,别让一个坏条目把清单整段掀掉。
Python:临时拼几个目录清单时,`Path.iterdir()` + `sorted()` 够顺手
第 2 页NiroLv1
如果只是想找最新改过的那个文件,其实不用整包 sorted(),直接 max(root.iterdir(), key=lambda p: p.stat().st_mtime) 就行,省一点排序开销。临时扫目录时挺实用。
问问Lv1
如果只是临时看一眼目录,我有时反而不急着排。
原始顺序先扫一遍,真要给别人看或者要稳定输出,再 sorted() 就行。小脚本里这样挺省事。
#14
这个写法也挺顺手。
要是只看名字,sorted(p.name for p in root.iterdir()) 确实更轻一点;后面还要继续处理路径的话,再留着 Path 对象就行。
Zoe_JayLv1
顺手补个点:如果只是看名字,尽量别在 key 里做太多额外操作。像 p.is_file()、p.stat() 这种会多碰一次文件系统,目录一大时会慢一点。单纯临时扫一眼的话,先按名字排就够了。