Python如何根据名称前缀筛选并移动指定目录
移动指定前缀目录的Python实现方案
仅使用Python标准库即可实现,无需安装第三方依赖,操作逻辑和代码如下:
核心实现逻辑
- 遍历源目录(即你提到的目录"A")下的所有子条目
- 筛选出类型为目录且名称以
abc_开头的条目 - 调用移动方法将符合条件的目录移动到指定目标路径
完整可运行代码
# 导入Python内置标准库,无需额外安装 import os import shutil # 路径配置,请替换为你自己的实际路径 source_dir = "/path/to/your/dir/A" # 源目录A的存储路径 target_dir = "/path/to/your/target" # 要移动到的目标路径 # 自动创建目标路径(如果目标路径不存在,避免运行时报错) os.makedirs(target_dir, exist_ok=True) # 遍历源目录下的所有内容 for entry_name in os.listdir(source_dir): # 拼接得到当前条目的完整绝对路径 entry_full_path = os.path.join(source_dir, entry_name) # 双重判断:1.当前条目是目录 2.目录名称以abc_开头 if os.path.isdir(entry_full_path) and entry_name.startswith("abc_"): # 执行移动操作 shutil.move(entry_full_path, os.path.join(target_dir, entry_name)) print(f"已成功移动目录:{entry_name}")
新手注意事项
- 路径推荐填写绝对路径,避免相对路径导致的位置匹配错误;Windows系统路径可以在字符串前加
r取消转义,例如r"C:\Users\xxx\Desktop\A" - 如果目标路径下已存在同名目录,
shutil.move会直接合并两个目录的内容,如有重名文件会直接覆盖,需要规避覆盖风险可以在移动前增加同名判断逻辑 - 如果需要避免单个目录移动失败导致整个程序终止,可以给
shutil.move部分添加try...except异常捕获逻辑
内容的提问来源于stack exchange,提问作者A B
相关产品推荐
相关产品推荐

