python中的os库

lemon Lv4

1. 核心功能

  • 与操作系统交互:处理文件/目录、环境变量、进程控制等。
  • 跨平台兼容:自动适配不同操作系统(Windows/Linux/macOS)。

2. 常用类与方法

  • 文件/目录操作

    • os.getcwd():获取当前工作目录。
    • os.listdir(path):列出目录下的所有文件和子目录。
    • os.mkdir(path):创建单层目录。
    • os.makedirs(path):递归创建多层目录。
    • os.rmdir(path):删除空目录。
    • os.removedirs(path):递归删除空目录。
    • os.rename(old, new):重命名文件/目录。
    • os.remove(path):删除文件。
  • 路径处理

    • os.path.join(path1, path2):拼接路径(自动处理分隔符)。
    • os.path.exists(path):检查路径是否存在。
    • os.path.isfile(path):判断是否为文件。
    • os.path.isdir(path):判断是否为目录。
    • os.path.abspath(path):获取绝对路径。
  • 环境变量

    • os.environ.get("VAR_NAME"):获取环境变量。
    • os.environ["VAR_NAME"] = "value":设置环境变量(谨慎使用)。
  • 系统信息

    • os.name:返回操作系统名称(posix=Linux/macOS,nt=Windows)。
    • os.cpu_count():获取CPU核心数。

3. 使用示例

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
import os

# 获取当前目录并列出文件
current_dir = os.getcwd()
print("当前目录:", current_dir)
print("目录内容:", os.listdir(current_dir))

# 创建/删除目录
os.mkdir("new_folder")
os.rmdir("new_folder")

# 路径拼接
full_path = os.path.join(current_dir, "data", "file.txt")

# 检查文件是否存在
if os.path.exists(full_path):
print("文件存在!")

# 获取绝对路径
abs_path = os.path.abspath("file.txt")

4. 注意事项

  • 路径分隔符:Windows用 \,Linux/macOS用 /,建议用 os.path.join() 自动处理。
  • 权限问题:操作文件/目录前,检查是否有读写权限(os.access(path, os.R_OK))。
  • 安全风险:避免直接用用户输入拼接命令(用 subprocess 替代 os.system())。
  • 跨平台性:使用 os.path 模块的函数处理路径,提高代码兼容性。

总结

  • 文件/目录操作:用 os.mkdiros.rename 等函数管理文件和目录。
  • 路径处理:用 os.path.join 拼接路径,os.path.exists 检查存在性。
  • 环境变量:通过 os.environ 读写系统环境变量。
  • 系统信息:用 os.nameos.cpu_count() 获取系统信息。
  • 标题: python中的os库
  • 作者: lemon
  • 创建于 : 2025-04-12 21:52:44
  • 更新于 : 2025-04-12 21:55:34
  • 链接: https://lemon2003.github.io/post/20250412215244.html
  • 版权声明: 本文章采用 CC BY-NC-SA 4.0 进行许可。
评论