• python实现将大文件夹分割成多个子文件夹


    楼主用的linux,一旦数据达到几万,文件夹打开就会变卡,同时也方便同时分工协作,便于git管理,写了个将大文件夹分割成多个小文件夹的脚本

    如操作文件夹:img,脚本不破坏img的数据,创建img_1/img_2……,脚本与操作文件夹必须在同一根目录

    运行时需要手动修改:mv_file('img', 10) # 操作目录,单文件夹存放数量

    import os
    import shutil
    
    def mv_file(img, num):
        list_ = os.listdir(img)
        if num > len(list_):
            print('长度需小于:', len(list_))
            exit()
        num_file = int(len(list_)/num) + 1
        cnt = 0
        for n in range(1,num_file+1): # 创建文件夹
            new_file = os.path.join(img + '_' + str(n))
            if os.path.exists(new_file+'_'+str(cnt)):
                print('该路径已存在,请解决冲突', new_file)
                exit()
            print('创建文件夹:', new_file)
            os.mkdir(new_file)
            list_n = list_[num*cnt:num*(cnt+1)]
            for m in list_n:
                old_path = os.path.join(img, m)
                new_path = os.path.join(new_file, m)
                shutil.copy(old_path, new_path)
            cnt = cnt + 1
        print('============task OK!===========')
    if __name__ == "__main__":
        mv_file('img', 10) # 操作目录,单文件夹存放数量
    

      

  • 相关阅读:
    C++ 二元作用域运算符(::)
    C 桶排序
    C 递归的选择排序
    C 归并算法
    C 可变长实参列表
    C条件编译的一些例子
    C实现将中缀算术式转换成后缀表达式
    Activiti6-数据库配置-dbconfig(学习笔记)
    idea在Terminal中使用maven指令
    Spring Boot的web开发
  • 原文地址:https://www.cnblogs.com/niulang/p/12034969.html
Copyright © 2020-2023  润新知