python实现文件分组复制到不同目录的例子

yipeiwu_com6年前Python基础

场景:某个文件夹下面包含数量巨大的文件,需求需要将这些文件按组(比如5000个一组)存放到不同的目录中去。

复制代码 代码如下:

# Filename: CopyFiles.py
import os
import os.path

folder_capacity = 20

def copy_files(src_dir, dest_dir):
    count = 0
    current_folder = ''

    for item in os.listdir(src_dir):
        abs_item = os.path.join(src_dir, item)
        if os.path.isfile(abs_item):
            count += 1
            if count%folder_capacity == 1:
                current_folder = os.path.join(dest_dir, str(count/folder_capacity))
                os.mkdir(current_folder)
            open(os.path.join(current_folder, item), 'wb').write(open(abs_item, 'rb').read())

copy_files(r'C:\\src', r'C:\\dest')

相关文章

pytorch::Dataloader中的迭代器和生成器应用详解

在使用pytorch训练模型,经常需要加载大量图片数据,因此pytorch提供了好用的数据加载工具Dataloader。 为了实现小批量循环读取大型数据集,在Dataloader类具体实...

python模块之sys模块和序列化模块(实例讲解)

python模块之sys模块和序列化模块(实例讲解)

sys模块 sys模块是与python解释器交互的一个接口 sys.argv 命令行参数List,第一个元素是程序本身路径 sys.exit(n) 退出程序,正常退出时exit...

Python实现网络端口转发和重定向的方法

本文实例讲述了Python实现网络端口转发和重定向的方法。分享给大家供大家参考,具体如下: 【任务】 需要将某个网络端口转发到另一个主机(forwarding),但可能会是不同的端口(r...

Python基础之文件读取的讲解

with open(filename) as fp: dataMat = [] for line in fp.readlines(): # fp.rea...

跟老齐学Python之print详解

eval() 在print干事情之前,先看看这个东东。不是没有用,因为说不定某些时候要用到。 复制代码 代码如下: >>> help(eval)  ...