You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python复制目录触发FileExistsError的原因解析

FileExistsError错误原因解析

核心原因

  • shutil.copytree的默认限制:shutil.copytree(source, dest) 函数默认要求目标目录必须不存在。如果目标路径已经有同名目录,函数会直接抛出FileExistsError,你的报错里/content/gdrive/MyDrive/Data1/MyData/Red就是已经存在的目标目录。
  • 循环逻辑重复触发复制:你的代码在遍历子文件夹下的.mp4文件时,每找到一个符合条件的文件就执行一次copytree操作。比如某个子文件夹(如Red)下有多个.mp4文件,第一次执行复制会创建MyData/Red目录,后续循环再次执行复制时,目标目录已存在,直接触发错误。
  • 目标路径设计重复:你将目标路径设置为MyData下与原父文件夹同名的目录,这个目录一旦被创建,后续所有针对该路径的copytree操作都会因目录已存在而失败。

代码中的问题点

你的代码逻辑里,外层循环遍历Data1下的子文件夹,内层循环遍历子文件夹里的.mp4文件,每遍历到一个.mp4就执行一次copytree,这会导致同一个目标目录被多次尝试创建——复制目录只需要执行一次,完全没必要针对每个文件重复执行。

内容的提问来源于stack exchange,提问作者fatemeh khoshhal

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.14 21:27:31