目录操作 💾
检查路径是否存在
1
2
|
import os
path_exists = os.path.exists("path/to/dir") # (╯✧▽✧)╯ 返回布尔值
|
创建目录
1
2
|
os.mkdir("new_dir") # 创建单层目录
os.makedirs("path/to/new/dirs", exist_ok=True) # 递归创建多层目录 ♪(^∇^*)
|
删除目录
1
2
3
|
os.rmdir("empty_dir") # 只能删除空目录哦~
import shutil
shutil.rmtree("dir_with_content") # 强力删除整个目录树 (ノ>ω<)ノ
|
文件/目录遍历 🌟
列出目录内容
1
2
|
files = os.listdir("path") # 返回文件名列表
entries = os.scandir("path") # 更高效的迭代器 (推荐!)
|
递归遍历所有文件
1
2
3
4
5
|
# 使用os.walk (ノ◕ヮ◕)ノ*:・゚✧
for root, dirs, files in os.walk("path"):
print(f"当前目录: {root}")
print(f"子目录: {dirs}")
print(f"文件: {files}")
|
文件信息获取 🔍
获取文件属性
1
2
3
|
stat = os.stat("file.txt")
print(f"大小: {stat.st_size}字节") # (´・ω・`)?
print(f"修改时间: {stat.st_mtime}")
|
判断文件类型
1
2
3
|
is_file = os.path.isfile("path") # 是不是文件
is_dir = os.path.isdir("path") # 是不是目录
is_link = os.path.islink("path") # 是不是链接 ٩(◕‿◕。)۶
|
路径操作 🛤️
路径拼接
1
|
full_path = os.path.join("dir", "subdir", "file.txt") # 超实用!✨
|
路径分解
1
2
|
dirname = os.path.dirname("/path/to/file.txt") # 获取目录部分
basename = os.path.basename("/path/to/file.txt") # 获取文件名部分
|
文件操作 📝
复制文件
1
2
|
shutil.copy("src.txt", "dst.txt") # 普通复制
shutil.copy2("src.txt", "dst.txt") # 保留元数据 ヽ(✿゚▽゚)ノ
|
移动/重命名
1
2
|
os.rename("old.txt", "new.txt") # 重命名
shutil.move("src.txt", "dst.txt") # 移动文件
|
删除文件
1
|
os.remove("file.txt") # 简单删除
|
高级操作 🚀
文件通配
1
2
|
import glob
py_files = glob.glob("*.py") # 匹配所有.py文件 ✨.~( ̄▽ ̄)~*
|
临时文件/目录
1
2
3
|
import tempfile
temp_file = tempfile.NamedTemporaryFile(delete=False) # 临时文件
temp_dir = tempfile.mkdtemp() # 临时目录 ٩(。・ω・。)و
|
权限修改
1
|
os.chmod("file.txt", 0o755) # 设置权限 (UNIX系统)
|
这些就是Python中最常用的系统文件操作啦!(๑•̀ㅂ•́)و✧ 记得处理文件时要注意:
- 检查文件是否存在
- 处理可能的权限问题
- 使用try-except捕获异常
- 跨平台时要小心路径分隔符哦~
Happy coding! 🎉🐍