Python 如何将同名文件夹递归复制到Google Colab中的另一个文件夹
我有10个折叠,每个折叠中有2个文件夹Python 如何将同名文件夹递归复制到Google Colab中的另一个文件夹,python,google-colaboratory,shutil,copytree,Python,Google Colaboratory,Shutil,Copytree,我有10个折叠,每个折叠中有2个文件夹面,和背景,我想在列车内复制不同的折叠,验证文件夹,以便列车或验证将从不同的折叠中有面,背景 我尝试了以下代码,但由于Google Colab使用python 3.6.9,我无法忽略文件夹存在的错误(如python 3.9),因此我得到以下错误: 错误: 试试看: mkdir(名称、模式) 除操作错误外: #无法依靠检查EEXIST,因为操作系统 FileExistError:[Errno 17]文件存在:“train/” 我的代码: #------
面
,和背景
,我想在列车内复制不同的折叠,验证文件夹,以便列车或验证将从不同的折叠中有面
,背景
试试看:
mkdir(名称、模式)
除操作错误外:
#无法依靠检查EEXIST,因为操作系统
FileExistError:[Errno 17]文件存在:“train/”
我的代码:
#--------------
#分割数据集
#==============
#我们已经有了测试集
# !mkdir列车
# !mkdir有效
导入操作系统,shutil
fileList=os.listdir(“新数据集”)
fileList.sort()
对于[x中的i,对于范围(10)中的x,如果((x!=9)和(x!=1))]:
#打印(文件列表[i])
#训练
如果(i<7):
subPathList=glob.glob('NewDataset/'+fileList[i]+'/**',recursive=False)
对于子路径列表中的子路径:
复制树(子路径“train/”)
#证实
其他:
subPathList=glob.glob('NewDataset/'+fileList[i]+'/**',recursive=False)
对于子路径列表中的子路径:
copytree(子路径“valid/”)
解决方案是递归地一个接一个地复制文件:
导入操作系统,shutil
对于[x中的i,对于范围(10)中的x,如果((x!=9)和(x!=1))]:
#打印(文件列表[i])
#训练
如果(i>2):
subPathList=glob.glob('/content/NewDataset/'+fileList[i]+'/**/',recursive=False)
对于子路径列表中的子路径:
对于os.listdir(子路径)中的im:
imFullPath=os.path.join(子路径,im)
targetPath=os.path.join('/content/train',subPath.split('/')[-2]+'/'))
#打印('列车:',目标路径)
shutil.copy(imFullPath,targetPath)
#证实
其他:
subPathList=glob.glob('/content/NewDataset/'+fileList[i]+'/**/',recursive=False)
对于子路径列表中的子路径:
对于os.listdir(子路径)中的im:
imFullPath=os.path.join(子路径,im)
targetPath=os.path.join('/content/valid',subPath.split('/')[-2]+'/'))
#打印('Validate:',targetPath)
shutil.copy(imFullPath,targetPath)