python指定文件个数移动文件,并创建文件夹

python实现批量分类,移动文件

今天我们来实现一个批量移动文件的方法,很多地方也是间接别人的代码,只要这样就再也不用担心文件移动问题了。
开始实现一下代码吧!
1.创建函数,主要实现判断文件结尾,将文件添加到一个列表中。

def scanDir(directory, postfix=None):
    files_list = []
    for root, dirs, files in os.walk(directory):
        for special_file in files:
            # 判断文件结尾,将路径和文件名添加到一个列表中。
            if postfix:
                if special_file.endswith(postfix):
                    files_list.append(os.path.join(root, special_file))
    return files_list

2.编写创建文件夹的方法

def mkdir(path):
    path = path.strip()
    path = path.rstrip("\\")
    isExists = os.path.exists(path)
    # 判断文件是否存在结果
    if not isExists:
        os.makedirs(path)
        print(path + ' 创建成功')
        return True
    else:
        print(path + ' 目录已存在')
        return False

3.主业务逻辑,编写在了main中,为后期修改方便

if __name__ == '__main__':
    # 路径
    path= ''
    # 指定每个目录下的文件数量
    fileMun = 100
    start = 0
    number = 0
    # 移动目录
    move_To = path+ os.sep + '0-100'
    mkdir(moveToDirectory)
    # 传入判断的文件结尾
    fileList = scanDir(path, postfix=".jpg")
    for fileName in fileList:
        start += 1
        shutil.move(fileName, move_To)
        if start == fileMun:
            start = 0
            number += fileMun
            number_1 = number + fileMun
            moveToDirectory = path+ os.sep + '{}-{}'.format(number, number_1)
            mkdir(moveToDirectory)

谢谢大家,有问题请多多指教!!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值