Python3 OS文件和目录方法

Python3 OS模块文件与目录操作知识大全

Python3 OS模块文件与目录操作知识大全

面向编程小白的通俗易懂讲解,涵盖常用文件操作和目录管理方法

1

路径操作

os.getcwd()
获取当前工作目录(Current Working Directory)。就像问Python:”你现在在哪个文件夹?”
import os
current_dir = os.getcwd()
print(“当前目录:”, current_dir)
os.chdir(path)
改变当前工作目录。相当于在文件资源管理器中双击进入另一个文件夹。
os.chdir(“/Users/me/Documents”) # 切换到Documents文件夹
os.path.abspath(path)
获取路径的绝对路径。把相对路径转换为完整的路径地址。
abs_path = os.path.abspath(“data.txt”)
print(“绝对路径:”, abs_path)
2

目录操作

os.listdir(path)
列出目录中的所有文件和子目录。就像在文件夹中查看所有内容。
files = os.listdir(“.”) # 列出当前目录内容
for file in files:
print(file)
os.mkdir(path)
创建单个目录。只能创建最后一级目录,如果上级目录不存在会出错。
os.mkdir(“new_folder”) # 在当前目录创建new_folder
os.makedirs(path)
递归创建目录。可以一次性创建多级目录。
os.makedirs(“project/data/images”) # 一次性创建多级目录
os.rmdir(path)
删除空目录。只能删除空文件夹。
os.rmdir(“empty_folder”)
os.removedirs(path)
递归删除空目录。从最里层开始删除,遇到非空目录停止。
os.removedirs(“project/data/images”)
os.walk(start_path)
遍历目录树。返回一个生成器,包含当前路径、子目录列表和文件列表。
for root, dirs, files in os.walk(“.”):
print(“目录:”, root)
print(“包含子目录:”, dirs)
print(“包含文件:”, files)
3

文件操作

os.rename(src, dst)
重命名文件或目录。可以用来移动文件(如果目标路径不同)。
os.rename(“old.txt”, “new.txt”) # 重命名
os.rename(“file.txt”, “backup/file.txt”) # 移动文件
os.remove(path)
删除文件(不能删除目录)。相当于把文件放入回收站并清空。
os.remove(“unwanted_file.txt”)
os.path.getsize(path)
获取文件大小(字节数)。查看文件有多大。
size = os.path.getsize(“data.zip”)
print(f”文件大小: {size} 字节”)
os.path.getmtime(path)
获取文件最后修改时间(时间戳格式)。
timestamp = os.path.getmtime(“report.docx”)
last_modified = datetime.fromtimestamp(timestamp)
4

路径检测

os.path.exists(path)
检查路径是否存在。相当于问:”这个文件/目录存在吗?”
if os.path.exists(“important.txt”):
print(“文件存在!”)
else:
print(“文件不存在”)
os.path.isfile(path)
检查路径是否是一个文件。
if os.path.isfile(“data.csv”):
print(“这是一个文件”)
os.path.isdir(path)
检查路径是否是一个目录。
if os.path.isdir(“documents”):
print(“这是一个目录”)
os.path.join(path1, path2, …)
智能拼接路径。能正确处理不同操作系统的路径分隔符。
full_path = os.path.join(“folder”, “subfolder”, “file.txt”)
# 在Windows上输出: folder\subfolder\file.txt
# 在Linux/Mac上输出: folder/subfolder/file.txt
os.path.split(path)
拆分路径为目录和文件名两部分。
dirname, filename = os.path.split(“/home/user/file.txt”)
# dirname: “/home/user”
# filename: “file.txt”
os.path.splitext(path)
拆分路径为文件名和扩展名两部分。
filename, ext = os.path.splitext(“image.jpg”)
# filename: “image”
# ext: “.jpg”

重要提示与使用技巧

⚠️ 安全提示:

1. 删除操作不可逆!使用 os.remove() 和 os.rmdir() 前务必确认路径正确

2. 操作关键文件前最好先备份

3. 使用 os.path.exists() 检查路径是否存在可避免程序崩溃

👍 最佳实践

• 使用 os.path.join() 替代字符串拼接路径,兼容不同操作系统

• 操作前进行存在性检查:if os.path.exists(path):

• 使用 os.walk() 处理嵌套目录结构

• 区分文件和目录操作

💡 常见错误

• 文件操作后忘记关闭文件(使用with语句可避免)

• 混淆文件和目录操作(如对文件用os.rmdir())

• 路径大小写敏感(Linux/Mac区分大小写)

• 权限不足导致操作失败

📚 学习建议

1. 从简单操作开始:列出目录、检查文件存在

2. 逐步尝试文件操作:创建、重命名、删除

3. 使用try-except处理异常

4. 配合shutil模块进行高级文件操作

Python OS模块文件与目录操作知识大全 | 专为编程初学者设计

提示:在实际编程中,记得导入os模块:import os

发表评论

您的邮箱地址不会被公开。 必填项已用 * 标注

滚动至顶部