python 将一个文件夹中的多个文件复制到多个新建的文件夹中

前两天采集了一些数据,数据量2000多张图片,图像命名为0.jpg、1.jpg、2.jpg……为了分散标注和管理这些数据,新建一些文件夹,文件命名为0、1、2、3。。。,每个文件夹中存放500张图片,便于后期标注管理。

     在存图像的文件夹的上一级目录,写python程序:

import os
import shutil

osDir=os.getcwd()
fileDir=osDir+"/all" #图像保存的路径
n=0
for image in os.listdir(fileDir):
    name,extension=os.path.splitext(image) #分离文件名字和后缀
    src=fileDir+"/"+image
    try:
       os.makedirs(osDir+"/"+"divert/"+str(int(name)//500),mode=0o777) #创建要保存的路径,/得到带小数点的结果,//只获取结果的整数部分,makedirs可创建定义的每级路径,makedirs在路径已存在时会报错,所以使用try,循环遇到路径已存在时pass
    except OSError:
       pass
    dst=osDir+"/"+"divert/"+str(int(name)//500)+"/"+image
    shutil.copyfile(src,dst)
    print(image+" is ok! %d images has been copied!"%(n))
    n=n+1

       /得到带小数点的结果,//只获取结果的整数部分,makedirs可创建定义的每级路径,makedirs在路径已存在时会报错,所以使用try,循环遇到路径已存在时pass。

       运行后22248张图片保存在45个文件夹中,除最后一个文件夹外,每个文件夹500张。

  

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值