You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在现有文件夹下按序号顺延规则批量创建子文件夹

实现方案

核心实现逻辑如下:

  • 先定位到folder_One文件夹的完整路径,若该文件夹不存在则先创建
  • 筛选该目录下所有名称为纯数字的子文件夹,将名称转为整数后取最大值,作为已有最大序号
  • 新文件夹的起始序号为「已有最大序号 + 1」,如果没有符合条件的子文件夹则起始序号为0
  • 从起始序号开始批量创建10个连续编号的子文件夹

原代码存在多处问题:未定义dir_path变量、循环逻辑嵌套错误、缺少数字名称筛选逻辑、语法存在括号缺失问题,无法实现需求。

可直接运行的完整代码

import os

path_data = 'Data'
word = 'folder_One'
folder_length = 10
# 拼接folder_One的完整路径
target_parent_dir = os.path.join(path_data, word)

def create_folder():
    # 先确保父文件夹存在
    os.makedirs(target_parent_dir, exist_ok=True)
    
    # 收集所有纯数字命名的子文件夹序号
    exist_nums = []
    for item in os.listdir(target_parent_dir):
        item_path = os.path.join(target_parent_dir, item)
        # 判断是文件夹且名称为纯数字
        if os.path.isdir(item_path) and item.isdigit():
            exist_nums.append(int(item))
    
    # 计算起始序号
    start_num = max(exist_nums) + 1 if exist_nums else 0
    
    # 批量创建10个文件夹
    for i in range(folder_length):
        new_folder_path = os.path.join(target_parent_dir, str(start_num + i))
        os.makedirs(new_folder_path, exist_ok=True)

# 调用执行
create_folder()

代码说明

  • 代码中加了exist_ok=True参数,避免重复创建已存在的文件夹时报错
  • 会自动跳过非数字命名的子文件夹,只根据数字序号顺延
  • 若folder_One下没有子文件夹,会直接创建0-9共10个文件夹;如果已有0-9,会创建10-19,以此类推

内容的提问来源于stack exchange,提问作者mourat

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.05 21:57:02