pathlib 是 Python 3.4+ 引入的一个新标准库,它提供了一种面向对象的方式来处理文件系统路径。相比于传统的 os 和 os.path 模块,pathlib 提供了更简洁、更直观的语法。以下是 pathlib 在 Python 中的一些实际应用场景:
使用 pathlib,你可以非常容易地进行路径操作,如连接、解析、获取父目录等。
from pathlib import Path# 创建一个 Path 对象p = Path('path/to/file.txt')# 获取父目录parent = p.parentprint(parent) # 输出: path/to# 连接路径new_path = p.with_name('new_file.txt')print(new_path) # 输出: path/to/new_file.txt# 获取文件扩展名extension = p.suffixprint(extension) # 输出: .txt文件和目录的创建与删除:pathlib 提供了一些方法来创建和删除文件和目录。
from pathlib import Path# 创建一个新目录new_dir = Path('new_directory')new_dir.mkdir()# 创建一个新文件new_file = new_dir / 'file.txt'new_file.touch()# 删除目录(如果为空)new_dir.rmdir()# 删除文件new_file.unlink()文件内容读写:pathlib 也简化了文件内容的读写操作。
from pathlib import Path# 写入文件file = Path('example.txt')file.write_text('Hello, world!')# 读取文件content = file.read_text()print(content) # 输出: Hello, world!遍历目录:使用 pathlib,你可以轻松地遍历目录并对其内容进行操作。
from pathlib import Path# 遍历当前目录下的所有文件for file in Path('.').iterdir(): if file.is_file(): print(file.name)# 递归遍历目录for file in Path('.').rglob('*'): if file.is_file(): print(file.relative_to('.').as_posix())文件信息查询:pathlib 还提供了查询文件信息的方法,如大小、修改时间等。
from pathlib import Pathfile = Path('example.txt')# 获取文件大小size = file.stat().st_sizeprint(size) # 输出: 文件大小(字节)# 获取文件最后修改时间mtime = file.stat().st_mtimeprint(mtime) # 输出: 文件最后修改时间(Unix 时间戳)总之,pathlib 提供了一种更现代、更直观的方式来处理文件系统路径和文件操作,使得代码更加简洁和易于理解。