导入模块 from pathlib import Path
目录操作
- 初始化
-
路径拼接与分解
操作符 /
Path对象 / Path对象
Path对象 / 字符串 或者 字符串 / Path对象
分解
parts属性,可以返回路径中的每一个部分
- joinpath
连接多个字符串到Path对象中
- 获取路径
str获取路径字符串
bytes获取路径字符串的bytes
- 父目录
parent 是目录的逻辑父目录
parents 是父目录序列,索引0是直接的父(顺序是从右至左)
- 目录的组成部分
name目录的最后一个部分
suffix目录中最后一个部分的扩展名
stem目录最后一个部分,没有后缀
suffixes返回多个扩展名列表
with_ suffix(suffix)有扩展名则替换,无则补充扩展名
with_name(name)替换目录最后一个部分并返回一个新的路径
全局方法
cwd()返回当前工作目录
home()返回当前家目录-
判断方法
is_dir()是否是目录,目录存在返回True
is_file()是否是普通文件,文件存在返回True
is_symlink()是否是软链接
is_scoket()是否是socket文件
is_block_device()是否是块设备
s_char_device()是否是字符设备
is_absolute()是否是绝对路径
resolve()返回一个新的路径,这个路径就是当前Path对象的绝对路径,如果是软链接则直接被解析
absolute()获取绝对路径
exists()目录或文件是否存在
rmdir()删除空目录。没有提供判断目录为空的方法
touch(mode=0o666, exist_ok=True)创建一个文件
as_uri()将路径返回成URI
mkdir(mode=0o777, parents=False, exits_ok=False)
parents,是否创建父目录,True等同于mkdir -p; False时,夫目录不存在,则抛出FileNotFoundError, exist_ok为False时,路径存在,抛出FileExistsError;为True时,FileExistsError被忽略
通配符
glob(pattern)通配给定的模式
rglob(pattern)通配给定的模式,递归目录
都返回一个生成器
- 匹配
match(pattern)
模式匹配,成功返回True
stat()
相当于stat命令,显示文件的详细信息,如果是符号链接,则显示符号链接本身的文件信息文件操作
使用方法类似内建函数open,返回一个文件对象