把几个文件夹里的文件汇总成一个文件夹

把几个文件夹里的文件汇总成一个文件夹,相同名称的文件在后面加序号 

import os
import shutil


def copy_files_with_unique_names(source_dirs, target_dir):
    os.makedirs(target_dir, exist_ok=True)

    # 遍历每个源文件夹
    for source_dir in source_dirs:
        for filename in os.listdir(source_dir):
            # 构建源文件的完整路径
            source_path = os.path.join(source_dir, filename)

            if os.path.isfile(source_path):
                # 构建目标文件的完整路径
                target_path = os.path.join(target_dir, filename)

                # 检查文件是否已存在
                if os.path.exists(target_path):
                    # 如果文件已存在,添加序号
                    base, ext = os.path.splitext(filename)
                    counter = 1
                    while True:
                        new_filename = f"{base}({counter}){ext}"
                        new_target_path = os.path.join(target_dir, new_filename)
                        if not os.path
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值