pathlib获取项目中的各种路径

pathlib是一个从3版本开始就能完全替代os.path的内置库,对于字符串的低级路径操作

获取当前文件路径

from pathlib import Path
print(Path.cwd()) #D:\pythontest\知识点

获取上层、上上层目录

print(Path.cwd().parent.parent) # D:\

拼接路径

场景:在当前目录的父级目录拼接 test 文件夹下的 test.txt

print(os.path.join(os.path.dirname(os.getcwd()),'test','test.txt')) #D:\pythontest\test\test.txt
paths = ["test","test.txt"]
ptrint(Path.cwd().parent.joinpath(*paths)) #D:\pythontest\test\test.txt

创建文件夹并命名

import os

# 创建 peoject/test目录
os.makedirs(os.path.join('project', 'test'), exist_ok=True)

# 将test.txt 重命名为 project/tests.txt
os.rename('test.txt', os.path.join('project', 'tests.txt'))

pathlib的常用基本方法

复制代码
path = Path.cwd()
# 返回所有上级目录的列表
print(list(path.parents)) #[WindowsPath('D:/pythontest'), WindowsPath('D:/')]

# 分割路径 类似os.path.split(), 不过是返回元组
print(path.parts) #('D:\\', 'pythontest', '知识点')

# 返回路径的根目录
print(path.root) #/

Path.is_dir()  # 判断是否是目录

Path.is_dir()  # 是否是文件

Path.exists()  # 判断路径是否存在

Path.open()  # 打开文件(支持with)

Path.resolve()  # 返回绝对路径

Path.cwd()  # 返回当前目录

Path.iterdir()  # 遍历目录的子目录或者文件

Path.mkdir()  # 创建目录

Path.rename()  # 重命名路径

Path.unlink()  # 删除文件或目录(目录非空触发异常)

Path.joinpath()  # 拼接路径
复制代码

 

posted @   xaom  阅读(282)  评论(0编辑  收藏  举报
(评论功能已被禁用)
相关博文:
阅读排行:
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
点击右上角即可分享
微信分享提示