Python os模块文件与路径管理实战指南

周叙
周叙
发布时间:2026-10-15| 4人浏览过
原创

本文深入解析Python标准库os模块在文件与路径管理中的核心应用。涵盖os.path模块对路径的拆分(split、basename等)与拼接(join、abspath等)操作,介绍如何获取文件属性(大小、时间戳),并演示使用chmod和access进行文件权限修改与判断。通过具体代码示例,帮助开发者编写跨平台、健壮的文件处理程序。

os模块概述与跨平台优势

作为Python的标准库组件,os模块封装了操作系统的API,提供统一的接口以访问不同操作系统下的相同功能。该模块涵盖了与系统环境、文件系统、用户数据库及权限交互的各类函数。充分利用os模块,开发者能够轻松编写出具备跨平台兼容性的应用程序。

路径拆分函数详解

path = os.getcwd()
print(path)
print(os.listdir('.'))#显示当前目录下的文件及文件夹

为了有效管理文件和路径,os.path模块提供了大量用于拆分路径的函数。以下是该模块中与路径拆分相关的主要函数列表:

  • 1、split:该函数返回一个包含两个元素的元组,分别对应文件的路径部分和文件名部分;
  • 2、dirname:该函数用于提取并返回文件所在的路径部分;
  • 3、basename:该函数用于提取并返回文件的名称部分;
  • 4、splitext:该函数返回一个二元组,分别包含去除扩展名后的文件路径部分以及扩展名本身。

路径构建与拼接方法

import os

path = os.getcwd()
print(path)
print(os.listdir('.'))#显示当前目录下的文件及文件夹
path = r"d:\test\log.log"
print(os.path.split(path))#分为路径和文件名
print(os.path.dirname(path))#返回文件路径
print(os.path.basename(path))#返回文件名
print(os.path.splitext(path))#返回路径文件名和扩展名

除了拆分,os.path模块还包含了构建路径的实用函数。其中最为常用的是expanduser、abspath以及join这三个函数:

  • 1、expanduser:用于展开用户的主目录(HOME目录);
  • 2、abspath:用于获取文件或路径的绝对路径字符串;
  • 3、join:根据当前操作系统的平台特性,使用正确的路径分隔符将多个路径片段拼接成一个完整路径。

文件属性获取技巧

print(os.path.expanduser('~'))
print(os.path.abspath('.'))
print(os.path.join('test','a.py'))

此外,os.path模块还提供了一系列用于获取文件属性的函数,包括查询文件的创建时间、修改时间及文件大小等信息:

  • 1、getatime:用于获取文件最后一次被访问的时间;
  • 2、getmtime:用于获取文件最后一次被修改的时间;
  • 3、getctime:用于获取文件的创建时间;
  • 4、getsize:用于获取文件的大小(字节数)。

文件与目录基础操作

os模块还包含了针对文件和目录进行基础操作的函数,例如创建目录、删除目录、删除文件以及重命名文件等:

  • 1、remove:用于删除由path路径所指向的文件;
  • 2、rmdir:用于删除由path路径所指向的文件夹。注意,该文件夹必须为空,否则将引发错误;
  • 3、mkdir:用于创建一个新的文件夹;
  • 4、rename:用于重命名文件或文件夹。

os模块还包含了用于修改文件权限和判断文件权限的函数,即chmod和access。

其中,chmod函数用于修改文件的权限设置,而access函数则用于判断文件是否具备相应的访问权限。

os模块还提供了三个常量来表示读、写及可执行权限,分别为R_OK、W_OK和X_OK。

文件权限管理与判断

import os,sys,stat

filename = 'log.log'
if not os.path.isfile(filename):
    print("file not exists")
elif not os.access(filename,os.R_OK):
    os.chmod(filename, stat.S_IRUSR)
else:
    print("access yes")

至此,关于Python文件与路径管理方法的介绍已完成。如需了解更多相关Python文件与路径管理内容,建议搜索本站历史文章或继续浏览后续相关文章。感谢大家的支持!

免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。

Python 相关产品和应用

全部下载
Selenium

Selenium

4.51.0 · Windows

用于浏览器自动化和 Web 测试的 Python 工具。

scikit-learn

scikit-learn

1.9.1 · Windows

常用 Python 机器学习算法与模型评估工具库。

Black

Black

26.10.1 · Windows

强调一致性的 Python 自动代码格式化工具。

Ruff

Ruff

0.17.1 · macOS

由 Rust 编写的高速 Python 代码检查和格式化工具。

pytest

pytest

9.1.1 · Windows

简洁而强大的 Python 自动化测试框架。

FastAPI

FastAPI

0.146.0 · Windows

高性能 Python API 框架,支持类型提示和自动接口文档。

Flask

Flask

3.1.3 · Windows

轻量灵活的 Python Web 应用框架。

Django

Django

6.1.2 · Windows

成熟的 Python Web 框架,适合构建内容站点和业务系统。

Spyder

Spyder

6.1.7 · Windows

面向科学计算与数据分析的 Python 集成开发环境。

SciPy

SciPy

1.18.1 · Windows

面向科学、工程和技术计算的 Python 算法库。