【Python脚本】路径管理之pathlib

news/2024/9/29 9:47:47

img

在Python的pathlib模块中,Path类和PurePath类是用于处理文件和目录路径的两个主要类.它们具有不同的目的和功能,以下是它们的主要异同点:

  1. 类的继承关系:
    Path类继承自PurePath,因此Path类拥有PurePath的所有方法.

不同点:

PurePath类:

  1. 纯路径对象:
    PurePath类及其子类(如PurePosixPathPureWindowsPath)只处理路径的表示操作,不涉及文件系统.它们不会与操作系统交互,因此不会检查路径是否存在或是否可访问.

  2. 平台无关性(PurePosixPath 和 PureWindowsPath):
    PurePath类有两个具体的子类,PurePosixPath用于表示POSIX系统(Linux、macOS)的路径,PureWindowsPath用于表示Windows系统的路径.

    • 即使在一个特定平台上,你仍然可以创建与另一个平台相关的路径表示.例如,在Linux上可以创建PureWindowsPath对象来处理Windows路径.
  3. 典型用法:
    PurePath通常用于路径的纯粹操作,如拼接、解析或比较路径,而不需要访问文件系统.这对于跨平台路径操作或静态路径检查非常有用.

Path类:

  1. 文件系统交互:
    Path类不仅能够表示路径,还能与操作系统的文件系统进行交互.Path提供了检查文件是否存在(exists())、创建文件夹(mkdir())、读取文件内容(read_text()等)等操作.

  2. 平台相关性:
    Path类是与操作系统相关的.根据运行的平台,它会自动选择使用PosixPathWindowsPath作为具体实现.因此,在Linux和macOS上,Path等价于PosixPath,而在Windows上,Path等价于WindowsPath.

  3. 典型用法:
    Path用于需要访问文件系统的情况,比如读取文件、遍历目录、创建文件等.它不仅可以处理路径,还能执行与路径相关的实际操作.

小结:

  • PurePath主要用于路径的操作表示,不会与文件系统交互.
  • Path不仅用于路径的表示,还用于与文件系统交互,如检查文件是否存在、创建文件夹、读取文件等.

pathlib 常用方法汇总

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.ryyt.cn/news/66059.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!

相关文章

基于VU9P的4路 100G光纤 6U VPX板卡

基于VU9P的4路 100G光纤 6U VPX板卡一款VPX的光纤接入卡,板卡的前面板提供4路 100G QSFP28+接口(16路GTY接口),后出线接入到VPX背板,提供28路GTY接口。板卡的P1提供16 lane PCI-E 3.0 接口,可运行一路16X的接口协议,板卡的P2提供两组 PCI-E 3.0 8X接口,可提供 两组8X的…

​VMware NSX 4.2.0.2 发布,新增功能概览

​VMware NSX 4.2.0.2 发布,新增功能概览​VMware NSX 4.2.0.2 发布,新增功能概览 VMware NSX 4.2.0.2 - 网络安全虚拟化平台 构建具有网络连接和安全性的云智能网络,跨多种云环境支持一致的策略、运维和自动化。 请访问原文链接:https://sysin.org/blog/vmware-nsx-4/,查…

从零开始学机器学习——线性和多项式回归

首先给大家介绍一个很好用的学习地址:https://cloudstudio.net/columns 在之前的学习中,我们已经对数据的准备工作以及数据可视化有了一定的了解。今天,我们将深入探讨基本线性回归和多项式回归的概念与应用。 如果在过程中涉及到一些数学知识,大家也不必感到畏惧,我会逐步…

【干货】Ftrans数据摆渡设备 建立安全高效数传通道!

数据摆渡设备是指在没有物理连接的情况下,通过隔离部件将数据从源端传输到目的端的技术和设备。这种设备通常用于实现不同网络环境间的数据安全传输,比如在内网和外网之间进行数据交换时,确保安全性和合规性。 一、数据摆渡设备的使用背景 随着网络技术的发展,信息安全成为…

鸿蒙应用开发——ability.ets中Json数据解析报错Property xxx does not exist on type Object

鸿蒙应用开发——ability.ets中Json数据解析报错Property xxx does not exist on type Object鸿蒙应用开发——ability.ets中Json数据解析报错Property xxx does not exist on type Object 话不多说,报错写法 JSON.parse(result).data 直接改成 (JSON.parse(result) as object…

博弈论——颤抖手纳什均衡(二十一)

img { display: block; margin-left: auto; margin-right: auto } table { margin-left: auto; margin-right: auto } 在博弈论中,纳什均衡(Nash Equilibrium)是博弈各方的一种策略组合,在这个组合下,每个参与者的策略都是对其他参与者策略的最优反应。换句话说,在纳什均…

622

imagemysql 汇总 基础操作 史上最全MySQL基本操作(这一篇就够用了!!!) 表管理 查看表结构 show full columns from sys_user ;查看表注释 selectTABLE_NAME as 表名,TABLE_COMMENT as 表注释 fromINFORMATION_SCHEMA.TABLES whereTABLE_SCHEMA = shiro_study;查看表索引 s…

【VMware VCF】使用 VCF Import Tool 将现有 vSphere 环境导入为 VI 域。

VCF Import Tool 工具使用两种方式来帮助客户将现有的 vSphere 或 vSphere + vSAN 环境转变为 VMware Cloud Foundation 环境,分别是转换(Convert)和导入(Import)。之前在这篇(使用 VCF Import Tool 将现有 vSphere 环境转换为管理域。)文章中演示了将现有 vSphere 环境…