Python os 模块常用方法总结
·
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 个方法速记(必背)
os.getcwd()— 获取当前目录os.chdir()— 切换目录os.listdir()— 列出文件os.mkdir()/os.makedirs()— 创建目录os.rmdir()/os.removedirs()— 删除目录os.remove()— 删除文件os.rename()— 重命名os.path.exists()— 判断存在os.path.isfile()/isdir()— 判断文件/目录os.path.join()— 路径拼接(最重要)os.path.abspath()— 绝对路径os.path.basename()— 文件名os.path.dirname()— 目录名os.path.splitext()— 分离后缀os.name— 判断系统
总结
- os 模块 = Python 与操作系统交互的工具集
- 文件/目录/路径/系统判断是最常用部分
- os.path.join() 是跨平台必备,一定要用
更多推荐

所有评论(0)