Python内置库:pathlib模块详解

本文详细介绍了Python的pathlib模块,包括与os模块的对比、内置函数的使用,如路径获取、拼接、创建删除目录、文件读写、路径判断等,帮助开发者更好地处理文件系统操作。
摘要由CSDN通过智能技术生成

1. 概述

Pathlib模块提供了表示文件系统路径的类,其语义适用于不同的操作系统。路径类分为纯路径和具体路径,前者提供无I/O的纯计算操作,后者继承纯路径,但也提供I/O操作。

2. 与os模块中函数对应关系

下表将各种os模块函数映射到相应的PurePath/Path等价函数。

image.png

尽管os.path.relpath()和PurePath.rerelative_to()有一些重叠的用例,但它们的语义差异足以保证不认为它们是等效的。

函数具体作用请参考官网: (pathlib — Object-oriented filesystem paths — Python 3.9.17 documentation)

3. pathlib模块内置函数

3.1 获取目录

  • Path.cwd(), 返回文件当前所在目录
  • Path.home(),返回用户的主目录
from pathlib import Path

current_path = Path.cwd()
home_path = Path.home()
print(f"文件当前所在目录:{current_path }\n用户主目录:{home_path}")

输出: 
文件当前所在目录:E:\CYX_DeepLearning
用户主目录:C:\Users\22799


3.2 目录拼接

from pathlib import Path

parts = ['dataset', '1.txt']

print(Path.cwd())
print(Path.cwd().joinpath(*parts))
print(Path.cwd().parent.joinpath(*parts))
print(Path.cwd().parent.parent.joinpath(*parts))

输出:

E:\CYX_DeepLearning
E:\CYX_DeepLearning\dataset\1.txt
E:\dataset\1.txt
E:\dataset\1.txt


斜杠 / 操作符用于拼接路径

from pathlib import Path

newPath = Path.cwd() / 'python'
print(Path.cwd())
print(f"目录为:{newPath}")

输出;

E:\CYX_DeepLearning
目录为:E:\CYX_DeepLearning\python



3.3 创建、删除目录, 计算相对路径

  • Path.mkdir(),创建给定路径的目录。
  • Path.rmdir(),删除该目录,目录文件夹必须为空。
  • Path.relative_t
  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值