pathlib库

导入 Path 类

from pathlib import Path 

创建 Path 对象

# 当前工作目录 
p = Path('.') 
print(p) 
 
# 绝对路径 
p = Path('/usr/local/bin') 
print(p) 
 
# 相对路径 
p = Path('my/relative/path') 
print(p) 
 
# 用户主目录 
p = Path('~').expanduser() 
print(p) 
 
# 当前脚本所在目录 
p = Path(__file__).parent 
print(p) 

路径拼接

# 使用 / 运算符拼接路径 
p = Path('/usr/local') / 'bin' / 'python' 
print(p) 

路径解析和属性

p = Path('/usr/local/bin/python') 
 
# 获取父目录 
print(p.parent)  # 输出:/usr/local/bin 
 
# 获取文件名 
print(p.name)  # 输出:python 
 
# 获取不带后缀的文件名 
print(p.stem)  # 输出:python 
 
# 获取文件后缀 
print(p.suffix)  # 输出:(空字符串,因为python文件没有后缀) 
 
# 获取所有父目录 
print(list(p.parents))  # 输出:[PosixPath('/usr/local/bin'), PosixPath('/usr/local'), PosixPath('/')] 
 
# 检查是否是绝对路径 
print(p.is_absolute())  # 输出:True 

文件和目录操作

p = Path('example.txt') 
 
# 写入文件 
p.write_text('Hello, World!') 
 
# 读取文件 
print(p.read_text())  # 输出:Hello, World! 
 
# 检查文件或目录是否存在 
print(p.exists())  # 输出:True 
 
# 检查是否是文件 
print(p.is_file())  # 输出:True 
 
# 检查是否是目录 
print(p.is_dir())  # 输出:False 
 
# 创建目录 
Path('my/new/directory').mkdir(parents=True, exist_ok=True) 
 
# 删除文件 
p.unlink() 

遍历目录

# 遍历当前目录下的所有文件和目录 
for child in Path('.').iterdir(): 
    print(child) 
 
# 使用 glob 模式匹配文件 
for py_file in Path('.').glob('*.py'): 
    print(py_file) 

总结

通过上述示例,可以看到 pathlib 库的 Path 类提供了丰富的路径操作功能,使得文件系统操作更加直观和方便。无论是路径拼接、属性访问、文件读写还是目录遍历,Path 类都提供了简洁且强大的方法来处理这些任务。

相关推荐

  1. pathlib

    2024-07-19 14:52:08       24 阅读
  2. pathlib标准

    2024-07-19 14:52:08       44 阅读
  3. python内置_pathlib学习笔记

    2024-07-19 14:52:08       77 阅读
  4. Pathlib的有哪些神奇功能在Python中

    2024-07-19 14:52:08       40 阅读
  5. Pathlib的有哪些神奇功能在Python中

    2024-07-19 14:52:08       31 阅读
  6. Python pathlib中Path用法

    2024-07-19 14:52:08       38 阅读
  7. Numpy

    2024-07-19 14:52:08       70 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-19 14:52:08       101 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-19 14:52:08       109 阅读
  3. 在Django里面运行非项目文件

    2024-07-19 14:52:08       87 阅读
  4. Python语言-面向对象

    2024-07-19 14:52:08       96 阅读

热门阅读

  1. vue 预览pdf

    2024-07-19 14:52:08       23 阅读
  2. LeetCode //C - 233. Number of Digit One

    2024-07-19 14:52:08       27 阅读
  3. Redis详解

    2024-07-19 14:52:08       23 阅读
  4. PyTorch深度学习入门汇总

    2024-07-19 14:52:08       27 阅读
  5. 非结构化网格跨结点并行渲染

    2024-07-19 14:52:08       25 阅读
  6. 快速删除node_modules

    2024-07-19 14:52:08       22 阅读
  7. 小抄 20240714 我即世界

    2024-07-19 14:52:08       24 阅读