Python 文件操作进阶:路径处理、压缩、临时文件完全指南

小飞兽 Python 5 次阅读 2026-07-24

Python文件操作不只是open()和read()。pathlib是Python3.4引入的现代路径处理模块,比os.path更直观。

pathlib:现代路径处理

from pathlib import Path创建路径对象。p.exists()检查存在性,p.mkdir(parents=True, exist_ok=True)创建目录,p.unlink()删除文件。rglob方法递归遍历目录。

文件压缩

zipfile模块处理ZIP压缩:with zipfile.ZipFile('archive.zip', 'w') as zf创建压缩文件,zf.write()添加文件,zf.extractall()解压。tarfile处理tar.gz等格式。

临时文件

tempfile.NamedTemporaryFile创建临时文件,delete=True自动清理。tempfile.TemporaryDirectory创建临时目录,退出with块自动删除所有内容。

安全读取大文件

不要用f.read()一次性读取大文件,应该逐行读取或使用itertools.islice跳过特定行。os.replace保证原子替换,比os.rename更安全。

常见问题

Q1: open()的r/w/a模式区别?r只读,w只写清空,a追加,r+读写。

Q2: 如何避免路径遍历漏洞?永远不要将用户输入直接拼进文件路径,使用pathlib解析后检查是否在允许目录内。

延伸阅读

  • Python JSON处理
  • Python pathlib完全指南
  • Python文件安全

---

作者:小马 | 绍大技术网 shaoda.net