【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
不仅用于路径的表示,还用于与文件系统交互,如检查文件是否存在、创建文件夹、读取文件等.
【Python脚本】路径管理之pathlib的更多相关文章
- 【Windows】Python脚本随机启动
Python脚本的管理在linux系统上市非常方便的,在windows则不是很方面.但是由于之前对于Windows这块的内容不是很了解,其实计划任务也是不错的,但和linux相比起来还是欠缺了那么点. ...
- 基于binlog来分析mysql的行记录修改情况(python脚本分析)
最近写完mysql flashback,突然发现还有有这种使用场景:有些情况下,可能会统计在某个时间段内,MySQL修改了多少数据量?发生了多少事务?主要是哪些表格发生变动?变动的数量是怎 ...
- 如何在cmd命令下运行python脚本
1.打开cmd窗口,输入:cd c:\\python27 (首先得确认python已加入环境变量) 2.第二条命令:python[空格]完整的python脚本路径,运行即可 3.一个案例: Micr ...
- Java调用Python脚本工具类
[本文出自天外归云的博客园] 在网上查了很多方法都不成功,在google上搜到一篇文章,做了一些小修改,能够处理中文输出.提取一个运行python脚本的Java工具类如下: package com.a ...
- Thinkphp5.0上传图片与运行python脚本
这里只体现了php可以通过批处理文件调用python脚本的效果 控制器代码 访问路径为127.0.0.1/index/index/upload. index模块,index控制器,upload方法. ...
- 探索如何在java中执行python脚本
一个偶然的场景,笔者需要在java代码中执行某个python脚本,并且需要向脚本中传递参数,有可能的话,还要获取该脚本的某些执行结果,回到主程序中继续执行下去. 没有思路之前,狭隘的想法是,java中 ...
- python脚本实现集群检测和管理
python脚本实现集群检测和管理 场景是这样的:一个生产机房,会有很多的测试机器和生产机器(也就是30台左右吧),由于管理较为混乱导致了哪台机器有人用.哪台机器没人用都不清楚,从而产生了一个想法-- ...
- [SublimeText] Sublime Text 2 运行 Python 脚本中文路径解决方法
在 SublimeText 中直接运行 Python 脚本,出现以下报错提示: Running python -u C:\Documents and Settings\Administrator\桌面 ...
- 白话陈述之——从python脚本变化解析由路径引起的GP服务运行失败问题
补充一下未完待续的利用Python分析GP服务运行结果的输出路径 & 实现服务输出路径的本地化,这篇博客中主要介绍了如何实现将GP服务生成的结果输出至本地及输入输出路径导致GP服务运行失败的问 ...
- jenkins服务器使用python脚本rabbitmqadmin和shell对目标服务器进行管理
jenkins服务器使用python脚本rabbitmqadmin和shell对目标服务器进行管理 准备工作: .jenkins服务器,安装rabbitmqadmi命令 rabbitmqadmin管理 ...
随机推荐
- 【Web前端】【开源分享】H5登陆界面 - 2021年12月24日
点我下载
- Java代码打成jar后 classgetClassLoadergetResource("")返回为null
用maven打成jar包后,Main.class.getClassLoader().getResource("")为null. 示例: public static void mai ...
- 冒泡排序------python实现
if __name__ == '__main__': ''' 算法描述 1.比较相邻的元素,更具大小交互位置 2.对每一对相邻元素作同样的工作,从开始第一队到结尾的最后一对,即可选出最大的数 3.所有 ...
- Makefile文件中,两个$的变量变量$$Xxx 与一个$的变量 $Xxx的区别
原文地址:Makefile文件中,两个$的变量变量$$Xxx 与一个$的变量 $Xxx的区别 Makefile 中的变量引用 在 Makefile 中,$ 符号用于变量替换,但它的使用方式有一些细微的 ...
- Qt编写物联网管理平台30-用户登录退出
一.前言 一个用户登录界面,是一个完整的应用系统,尤其是客户端系统必备的一个功能模块,传统的登录处理一般都是和本地的用户信息进行比对,而现代的登录系统一般是发送请求到服务器进行验证,无论何种方式,都是 ...
- Hugo 静态博客部署
I. 前提条件 1.1 安装 Hugo 1.1.1 Windows 1.下载 Hugo(建议下载扩展版):Hugo(github.com) 2.解压 Hugo 压缩包到指定目录. 3.[Win + R ...
- [云研发]腾讯云cloudstudio使用教程-记录1
cloudstudio 在vscode中新建终端,使用nvidia-smi查看显卡与gpu情况,可知当前使用的显卡是T4的,显存有15G
- 第八章 AtomicInteger源码解析
1.原子类 可以实现一些原子操作 基于CAS 下面就以AtomicInteger为例. 2.AtomicInteger 在没有AtomicInteger之前,对于一个Integer的线程安全操作,是需 ...
- java线程池优化
ThreadPoolExecutor机制 一.概述 1.ThreadPoolExecutor作为java.util.concurrent包对外提供基础实现,以内部线程池的形式对外提供管理任务执行,线程 ...
- Idea创建maven项目流程、修改默认配置、及注意事项
这里所演示的环境: windows7+jdk1.7.0_80+tomcat8.5.41+maven3.0.5+idea2017.3.6 1.idea使用指定maven版本 打开idea,使用快捷键ct ...