写脚本处理一批文件时,pathlib 比手动拼路径舒服一点,尤其是跨平台路径分隔符不用自己管。
环境:Python 3.8+。可以建个小目录试:
mkdir pathlib-demo && cd pathlib-demo
printf 'hello\n' > a.txt
printf 'skip\n' > b.log
printf 'world\n' > c.txt
再建一个 scan.py:
from pathlib import Path
root = Path('.')
for path in sorted(root.glob('*.txt')):
print(path.name, '=>', path.read_text(encoding='utf-8').strip())
运行:
python scan.py
大概会看到:
a.txt => hello
c.txt => world
这种写法适合本地小脚本。要递归扫子目录可以把 glob('*.txt') 换成 rglob('*.txt'),不过目录很大时最好先加一点过滤,别一口气扫太多。