pathlib 面向对象的文件系统路径

# -*- coding: utf-8 -*-
# pathlib 面向对象的文件系统路径

# 导入库
import pathlib
from pathlib import Path,PurePath,PureWindowsPath,PurePosixPath

#生成一个Path对象
p = Path('E:/pythonProject1')
print(type(p)) # <class 'pathlib.WindowsPath'>
#遍历路径下子路径
# for x in p.iterdir():
#     print(x.is_dir()) # True
#     print(type(x)) # <class 'pathlib.WindowsPath'>
# 运算符 /
p = p / 'test' / 'a.py'
print(p) #E:\pythonProject1\test\a.py
print(PureWindowsPath(p)) #E:\pythonProject1\test\a.py
# 获取父路径
print(p.parent) #E:\pythonProject1\test
print(p.parents[0],p.parents[1],p.parents[2]) #E:\pythonProject1\test E:\pythonProject1 E:\
# 获取最后路径组件 扩展名 去除扩展名
print(p.name) #a.py
print(p.suffix) #.py
print(p.parent.suffix) #
print(p.stem) #a
# 获取正斜杠(/)分隔的路径字符串
print(p.as_posix()) #E:/pythonProject1/test/a.py
print(type(p.as_posix())) #<class 'str'>
# 当前路径
print(Path.cwd()) #E:\pythonProject1
p1 = Path() # 当前路径
print(p1) #.
print(p1.resolve()) # 当前路径绝对化 #E:\pythonProject1
# 改变模式和权限
# p.chmod(0o444)
# 路径判断
print(p.exists()) # 是否为已存在文件或目录
print(p.is_dir()) # 是否为指向一个目录
print(p.is_file()) # 是否为指向一个文件
# 新建
Path.mkdir(p.parent) # 新建目录


# PurePath() 代表当前系统的路径风格 一个路径片段
print(type(PurePath())) # <class 'pathlib.PureWindowsPath'>
print(PurePath("test","a")) #test\a
print(PurePath(Path("test",Path("a")))) #test\a

#PurePosixPath  PurePath 的子类,路径风格不同于 Windows 文件系统:
print(PurePosixPath('foo') == PurePosixPath('FOO')) #False
#PureWindowsPath PurePath 的一个子类,路径风格为 Windows 文件系统路径
print(PureWindowsPath('foo') == PureWindowsPath('FOO')) #True

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值