Python os模块核心函数与路径处理详解

Evan
Evan
发布时间:2026-10-14| 4人浏览过
原创

本文详解Python中os模块的常用功能,包括判断文件是否存在、递归创建目录、提取文件名与路径等核心方法。同时介绍获取操作系统名称、环境变量、进程ID及CPU数量等系统信息,并对比不同平台的路径与换行符差异,助力开发者高效进行跨平台文件操作。

os模块基础路径处理函数

1、说明

os.path.exists():用于判断指定路径(文件或文件夹)是否存在,若存在则返回True,若不存在则返回False。

os.makedirs():用于创建文件夹。只需传入目标文件夹的路径即可,该函数无返回值。值得注意的是,此函数支持目录的递归创建。如果传入路径中倒数第二级目录不存在,它会自动先创建该级目录,随后在其下创建目标目录,依此类推。

os.path.basename():传入一个文件的路径,返回该文件的文件名。

os.path.dirname():与 os.path.basename() 相反,返回的是文件所在的目录的路径。

2、实例


img_path = '/home/wang/my_data/imgs/a.png'
img_name = os.path.basename(img_path)
img_dir = os.path.dirname(img_path)
# img_name = 'a.png'
# img_dir = '/home/wang/my_data/imgs'
# 若所传入地址为文件夹地址,例如 img_path = '/home/wang/my_data/imgs'
# 则 img_name = 'imgs' , img_dir = '/home/wang/my_data'

os模块系统信息与高级功能

知识点扩展:

os 模块代表了程序所在的操作系统,主要用于获取程序运行所在操作系统的相关信息。

在 Python 的交互式解释器中先导入 os 模块,然后输入 os.__all__ 命令(__all__ 变量代表了该模块开放的公开接口),即可看到该模块所包含的全部属性和函数。

此处仅介绍 os 模块中常用的属性和函数:

  • os.name:返回导入依赖模块的操作系统名称,通常可返回 'posix'、'nt'、 'java' 等值其中之一。
  • os.environ:返回在当前系统上所有环境变量组成的字典。
  • os.fsencode(filename):该函数对类路径(path-like)的文件名进行编码。
  • os.fsdecode(filename):该函数对类路径(path-like)的文件名进行解码。
  • os.PathLike:这是一个类,代表一个类路径(path-like)对象。
  • os.getenv(key, default=None):获取指定环境变量的值。
  • os.getlogin():返回当前系统的登录用户名。与该函数对应的还有 os.getuid()、os.getgroups()、os.getgid() 等函数,用于获取用户 ID、用户组、组 ID 等,这些函数通常只在 UNIX 系统上有效。
  • os.getpid():获取当前进程 ID。
  • os.getppid():获取当前进程的父进程 ID。
  • os.putenv(key, value):该函数用于设置环境变量。
  • os.cpu_count():返回当前系统的 CPU 数量。
  • os.sep:返回路径分隔符。
  • os.pathsep:返回当前系统上多条路径之间的分隔符。一般在 Windows 系统上多条路径之间的分隔符是英文分号(;);在 UNIX 及类 UNIX 系统(如 Linux、Mac os X)上多条路径之间的分隔符是英文冒号(:)。
  • os.linesep:返回当前系统的换行符。一般在 Windows 系统上换行符是“\r\n”:在 UNIX 系统上换行符是“\n”;在 Mac os X 系统上换行符是“\r”。
  • os.urandom(size):返回适合作为加密使用的、最多由 N 个字节组成的 bytes 对象。该函数通过操作系统特定的随机性来源返回随机字节,该随机字节通常是不可预测的,因此适用于绝大部分加密场景。

到此这篇关于Python中os模块的实例用法的文章就介绍到这了,更多相关Python中os模块的功能介绍内容请搜索本站以前的文章或继续浏览下面的相关文章希望大家以后多多支持本站!

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

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 算法库。