Python os 模块常用方法总结

os 模块是 Python 操作操作系统、文件、路径、进程、环境变量的核心内置库,无需安装,直接 import os 即可使用。


一、获取/判断操作系统

import os

# 1. 获取系统类型(Windows=nt,Linux/mac=posix)
print(os.name)

# 2. 获取更详细的系统信息
print(os.uname())  # Linux/mac 可用
# Windows 用:
import sys
print(sys.platform)  # win32

# 3. 判断系统分隔符
print(os.sep)  # Windows=\,Linux/

二、目录操作(最常用)

1. 获取当前工作目录

os.getcwd()   # 获取当前脚本所在目录

2. 切换工作目录

os.chdir("D:/test")  # 切换到 D 盘 test 文件夹

3. 创建目录

os.mkdir("new_dir")        # 创建单层目录
os.makedirs("a/b/c")       # 创建多层目录(递归)

4. 删除目录

os.rmdir("dir")            # 删除空目录
os.removedirs("a/b/c")     # 递归删除空目录

5. 列出目录内容

os.listdir("./")    # 返回当前目录下所有文件/文件夹(列表)

三、文件操作

1. 重命名文件/目录

os.rename("old.txt", "new.txt")

2. 删除文件

os.remove("test.txt")   # 只能删文件,不能删目录

3. 判断文件/目录是否存在

os.path.exists("test.txt")  # True/False

4. 判断是否是文件 / 目录

os.path.isfile("test.txt")   # 是否是文件
os.path.isdir("test_dir")    # 是否是目录

四、路径处理(os.path 子模块,高频)

1. 拼接路径(跨系统,最推荐)

os.path.join("folder", "test.txt")
# Windows → folder\test.txt
# Linux → folder/test.txt

2. 获取绝对路径

os.path.abspath("test.txt")

3. 获取文件所在目录

os.path.dirname("a/b/c.txt")  # a/b

4. 获取文件名

os.path.basename("a/b/c.txt")  # c.txt

5. 分离文件名和后缀

os.path.splitext("demo.py")  # ("demo", ".py")

6. 获取文件大小(字节)

os.path.getsize("test.txt")

五、环境变量操作

# 获取所有环境变量
os.environ

# 获取某个环境变量
os.getenv("PATH")

# 设置环境变量
os.putenv("MY_VAR", "hello")

六、执行系统命令

os.system("dir")    # Windows
os.system("ls")     # Linux/mac

七、进程/权限相关(了解)

os.chmod("test.txt", 0o777)  # 修改文件权限
os.getpid()                  # 获取当前进程ID
os.getuid()                  # 获取用户ID(Linux)

八、os 模块高频实用代码模板

模板1:遍历文件夹所有文件

for file in os.listdir("./"):
    print(file)

模板2:判断文件是否存在,不存在则创建

if not os.path.exists("test.txt"):
    with open("test.txt", "w") as f:
        f.write("hello")

模板3:跨系统拼接路径(常用)

path = os.path.join("data", "2025", "report.csv")

模板4:判断操作系统

if os.name == "nt":
    print("Windows")
else:
    print("Linux/Mac")

九、os 模块最核心 15 个方法速记(必背)

  1. os.getcwd() — 获取当前目录
  2. os.chdir() — 切换目录
  3. os.listdir() — 列出文件
  4. os.mkdir() / os.makedirs() — 创建目录
  5. os.rmdir() / os.removedirs() — 删除目录
  6. os.remove() — 删除文件
  7. os.rename() — 重命名
  8. os.path.exists() — 判断存在
  9. os.path.isfile() / isdir() — 判断文件/目录
  10. os.path.join() — 路径拼接(最重要)
  11. os.path.abspath() — 绝对路径
  12. os.path.basename() — 文件名
  13. os.path.dirname() — 目录名
  14. os.path.splitext() — 分离后缀
  15. os.name — 判断系统

总结

  • os 模块 = Python 与操作系统交互的工具集
  • 文件/目录/路径/系统判断是最常用部分
  • os.path.join() 是跨平台必备,一定要用
Logo

Agent 垂直技术社区,欢迎活跃、内容共建。

更多推荐