【Python脚本】路径管理之pathlib

在Python的pathlib模块中,Path类和PurePath类是用于处理文件和目录路径的两个主要类.它们具有不同的目的和功能,以下是它们的主要异同点:
- 类的继承关系:
Path类继承自PurePath,因此Path类拥有PurePath的所有方法.
不同点:
PurePath类:
-
纯路径对象:
PurePath类及其子类(如PurePosixPath、PureWindowsPath)只处理路径的表示和操作,不涉及文件系统.它们不会与操作系统交互,因此不会检查路径是否存在或是否可访问. -
平台无关性(PurePosixPath 和 PureWindowsPath):
PurePath类有两个具体的子类,PurePosixPath用于表示POSIX系统(Linux、macOS)的路径,PureWindowsPath用于表示Windows系统的路径.- 即使在一个特定平台上,你仍然可以创建与另一个平台相关的路径表示.例如,在Linux上可以创建
PureWindowsPath对象来处理Windows路径.
- 即使在一个特定平台上,你仍然可以创建与另一个平台相关的路径表示.例如,在Linux上可以创建
-
典型用法:
PurePath通常用于路径的纯粹操作,如拼接、解析或比较路径,而不需要访问文件系统.这对于跨平台路径操作或静态路径检查非常有用.
Path类:
-
文件系统交互:
Path类不仅能够表示路径,还能与操作系统的文件系统进行交互.Path提供了检查文件是否存在(exists())、创建文件夹(mkdir())、读取文件内容(read_text()等)等操作. -
平台相关性:
Path类是与操作系统相关的.根据运行的平台,它会自动选择使用PosixPath或WindowsPath作为具体实现.因此,在Linux和macOS上,Path等价于PosixPath,而在Windows上,Path等价于WindowsPath. -
典型用法:
Path用于需要访问文件系统的情况,比如读取文件、遍历目录、创建文件等.它不仅可以处理路径,还能执行与路径相关的实际操作.
小结:
PurePath主要用于路径的操作和表示,不会与文件系统交互.Path不仅用于路径的表示,还用于与文件系统交互,如检查文件是否存在、创建文件夹、读取文件等.
本文来自博客园,作者:FE-有限元鹰,转载请注明原文链接:https://www.cnblogs.com/aksoam/p/18438918

python的pathlib中,purepath类与path类的差别
浙公网安备 33010602011771号