pathlib提供面向对象的路径操作,支持创建路径、拼接、访问组件、判断属性、读写文件、遍历目录、管理目录及获取文件信息,相比os.path更直观且跨平台兼容。

pathlib 是 Python 3.4+ 引入的用于处理文件路径的标准库模块,提供面向对象的方式操作路径,比传统的 os.path 更直观、更易读。以下是它的主要用法。
1. 创建路径对象
Path 是核心类,用来表示一个文件或目录路径。
使用字符串创建:from pathlib import Path; p = Path('/home/user/documents') 使用多个部分拼接:p = Path('/home') / 'user' / 'documents' 获取当前工作目录:p = Path.cwd() 获取用户主目录:p = Path.home()
2. 路径拼接与组合
使用斜杠 / 操作符安全地拼接路径,无需担心斜杠方向问题。
path = Path('data') / 'raw' / 'file.txt' 支持与字符串混合:Path('data') / 'output.csv'
3. 访问路径的各个部分
可以轻松提取路径中的不同组成部分。
立即学习“Python免费学习笔记(深入)”;
p.name:获取文件名(含扩展名),如 report.pdf p.stem:获取文件名主体,如 report p.suffix:获取扩展名,如 .pdf p.parent:获取上级目录 p.parts:返回路径各部分组成的元组
4. 判断路径属性
检查路径是否存在以及其类型。
p.exists():路径是否存在 p.is_file():是否为文件 p.is_dir():是否为目录 p.is_symlink():是否为符号链接
5. 文件读写操作
可以直接对文件进行读写,无需打开关闭。
读取文本:content = Path('hello.txt').read_text(encoding='utf-8') 写入文本:Path('output.log').write_text('Hello!', encoding='utf-8') 读取二进制:data = Path('image.png').read_bytes()
6. 遍历目录
提供了多种方式列出目录内容。
p.iterdir():遍历目录下所有条目(返回生成器) p.glob("*.py"):匹配特定模式的文件,如所有 Python 文件 p.rglob("*.txt"):递归匹配所有子目录中的 .txt 文件
7. 创建和删除目录
可直接管理目录结构。
创建单层目录:Path('logs').mkdir(exist_ok=True) 创建多层目录:Path('a/b/c').mkdir(parents=True, exist_ok=True) 删除空目录:Path('temp').rmdir() 删除文件:Path('old.txt').unlink(missing_ok=True)
8. 获取文件信息
获取文件的元数据。
p.stat():返回 stat 结构,包含大小、权限、修改时间等 p.lstat():类似 stat,但不解析符号链接 例如获取文件大小:p.stat().st_size基本上就这些。pathlib 让路径操作变得更简洁、跨平台兼容性更好,推荐在新项目中优先使用它替代 os.path 和 glob 模块。
以上就是python中pathlib模块的用法有哪些?的详细内容,更多请关注创想鸟其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1381962.html
微信扫一扫
支付宝扫一扫