如下图所示,对每个文件夹中的文件批量抽样,并且按此结构保存到新的目录下
代码
# -*- coding: utf-8 -*-
'''
@Time:2019/3/16 20:40
@Author:lenovo-DC
@Function:对文件夹中的文件批量采样
'''
import os, random, shutil
def copyFile(fileDir):
pathDir = os.listdir(fileDir)
# 遍历文件夹
for dir in range(0,len(pathDir)):
path = os.path.join(fileDir, pathDir[dir])#当前文件夹
dstpath = os.listdir(path)
dstpath.sort(key=lambda x: int(x.split('.')[0]))
# 对当前文件夹中的文件采样
sample = random.sample(dstpath, 42)
for name in sample:
print(fileDir + str(dir) + '/'+name)
shutil.copyfile(fileDir + str(dir) + '/' + name,
tarDir + str(dir) + '/' + name)
if __name__ == '__main__':
fileDir = "F:/bosdata/old/"
tarDir = 'F:/bosdata/new/'
copyFile(fileDir)