Python3 OS模块中的文件/目录方法:os.path() 模块

server/2025/2/5 18:46:08/

一. 简介

前面文章简单学习了 Python3 中 OS模块中的文件/目录的部分函数。

本文继续学习 Python3 OS模块中的文件/目录方法:Python3 os.path() 模块,以及 path模块涉及的方法。

二. Python3 OS模块中的文件/目录方法:os.path() 模块

1.  path()模块

os.path 模块是 Python 标准库中 os 模块的一部分,专门用于操作和处理文件路径。os.path 模块提供了一组强大的工具来对文件和目录路径进行各种操作,例如获取文件名、判断路径是否存在、路径拼接、路径规范化等。

这里简单介绍一下 os.path 模块的几种常用方法:

(1) 路径操作
方法描述
os.path.abspath(path)将相对路径转换为绝对路径。
os.path.basename(path)获取路径的最后一部分,即文件名。
os.path.dirname(path)获取路径中的目录部分。
os.path.join(*path0, *path1,...)拼接多个路径,自动处理路径分隔符。
os.path.split(path)将路径分割为目录和文件名的元组。
os.path.splitext(path)将路径分割为文件名和扩展名的元组。
(2) 路径信息获取
方法描述
os.path.exists(path)判断路径是否存在。
os.path.isfile(path)判断路径是否为文件。
os.path.isdir(path)判断路径是否为目录。
os.path.getsize(path)获取文件的大小,以字节为单位。
os.path.getatime(path)获取文件的最后访问时间。
os.path.getmtime(path)获取文件的最后修改时间。
os.path.getctime(path)获取文件的创建时间(在某些操作系统上表示最后状态更改时间)。
(3) 路径规范化
方法描述
os.path.normpath(path)规范化路径,消除冗余的分隔符和相对路径标记。
os.path.realpath(path)获取文件的真实路径,解析符号链接。
os.path.relpath(path, start=os.curdir)计算相对路径,从 startpath
(4) 路径比较
方法描述
os.path.commonpath(paths)返回路径序列中的共同路径。
os.path.commonprefix(list)返回路径序列中的最长公共前缀。
os.path.samefile(path1, path2)判断两个路径是否指向同一个文件。
os.path.sameopenfile(fp1, fp2)判断两个打开的文件对象是否指向同一个文件。
os.path.samestat(stat1, stat2)判断两个文件是否拥有相同的 stat 状态。

2. 示例

示例1:

#!/usr/bin/python3import os#当前文件名的绝对路径
print(os.path.abspath(__file__))
#获取当前文件的目录
print(os.path.dirname(os.path.abspath(__file__)))

运行后结果如下:

/home/Code_Learns/python_codes/hello.py
/home/Code_Learns/python_codes

示例2:

#!/usr/bin/python3import ospath = "/home/Code_Learns/python_codes/hello.py"
#获取文件名
print(os.path.basename(path))
#拼接路径
print(os.path.join("home", "Code_Learns", "test.txt"))
#分割路径与文件名
print(os.path.split(path))

运行后结果如下:

hello.py
home/Code_Learns/test.txt
('/home/Code_Learns/python_codes', 'hello.py')

示例3:

#!/usr/bin/env python3import os
import time#假设test.txt文件已存在
file_path = "./test.txt"#输出文件创建时间
print(os.path.getctime(file_path))
#输出文件最近的修改时间
print(os.path.getatime(file_path))
#输出文件最近的访问时间
print(os.path.getmtime(file_path))
#输出文件大小,以字节为单位
print(os.path.getsize(file_path))
#输出文件的规范化的路径
print(os.path.normpath("/home//wangtian/../python_codes/test.txt"))

运行后如下:


http://www.ppmy.cn/server/165204.html

相关文章

Vue3学习笔记-模板语法和属性绑定-2

一、文本插值 使用{ {val}}放入变量&#xff0c;在JS代码中可以设置变量的值 <template><p>{{msg}}</p> </template> <script> export default {data(){return {msg: 文本插值}} } </script> 文本值可以是字符串&#xff0c;可以是布尔…

pytorch实现门控循环单元 (GRU)

人工智能例子汇总&#xff1a;AI常见的算法和例子-CSDN博客 特性GRULSTM计算效率更快&#xff0c;参数更少相对较慢&#xff0c;参数更多结构复杂度只有两个门&#xff08;更新门和重置门&#xff09;三个门&#xff08;输入门、遗忘门、输出门&#xff09;处理长时依赖一般适…

【Numpy核心编程攻略:Python数据处理、分析详解与科学计算】2.29 NumPy+Scikit-learn(sklearn):机器学习基石揭秘

2.29 NumPyScikit-learn&#xff1a;机器学习基石揭秘 目录 #mermaid-svg-46l4lBcsNWrqVkRd {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-46l4lBcsNWrqVkRd .error-icon{fill:#552222;}#mermaid-svg-46l4lBcsNWr…

caddy2配置http_basic用于验证用户名密码才允许访问页面

参考&#xff1a; basicauth (Caddyfile指令) — Caddy v2中文文档 1&#xff0c;查看caddy是否已经包含了Basic Auth插件 命令&#xff1a;caddy list-modules | grep http_basic 如果显示&#xff1a; http.authentication.providers.http_basic 则代表包含 Basic Auth 模…

每日一题——滑动窗口的最大值

滑动窗口的最大值 题目描述示例说明 解题思路双端队列的特点实现步骤代码实现&#xff08;C语言&#xff09;代码解析 总结 题目描述 给定一个长度为 n 的数组 num 和滑动窗口的大小 size&#xff0c;找出所有滑动窗口里数值的最大值。 例如&#xff0c;如果输入数组 {2, 3, …

【Java异步编程】基于任务类型创建不同的线程池

文章目录 一. 按照任务类型对线程池进行分类1. IO密集型任务的线程数2. CPU密集型任务的线程数3. 混合型任务的线程数 二. 线程数越多越好吗三. Redis 单线程的高效性 使用线程池的好处主要有以下三点&#xff1a; 降低资源消耗&#xff1a;线程是稀缺资源&#xff0c;如果无限…

衡水市城区小区地图)矢量高清cdr|pdf大图内容测评

&#xff08;衡水市城区小区地图&#xff09;矢量高清cdr|pdf大图&#xff0c;cdr。ai软件打开另保存cdr&#xff0c;ai格式就可以&#xff0c;看样图

SpringBoot 连接Elasticsearch带账号密码认证 ES连接 加密连接

依赖 <dependency><groupId>org.elasticsearch.client</groupId><artifactId>elasticsearch-rest-high-level-client</artifactId> </dependency>配置文件 es:ip: 172.23.4.130port: 9200user: elasticpassword: qwertyuiop读取配置文件…