Python如何在指定目录下批量创建多个子文件夹?
解决方案
方法1:使用列表+循环批量创建(基于os模块)
你可以把需要创建的子文件夹名称统一存入一个列表,遍历列表执行创建操作即可,仅需写一次创建逻辑,后续新增子文件夹只需要在列表里加名称就行,还可以给os.makedirs添加exist_ok=True参数,避免目录已存在时抛出异常:
import os name = input("Template Name: ") # input默认返回字符串,不需要额外转str def folders_creation(): templates_path = "D:/JoyTemplates Remastered/Templates" base_dir = os.path.join(templates_path, name) # 把所有要创建的子文件夹名放进列表 sub_folders = ["Etsy Files", "Editing Files"] for folder in sub_folders: os.makedirs(os.path.join(base_dir, folder), exist_ok=True)
这里用os.path.join拼接路径,比手动加斜杠兼容性更好,不会因为系统差异出路径错误。
方法2:使用pathlib模块(更简洁的现代写法)
Python 3.4及以上版本可以用内置的pathlib模块处理路径,写法更直观,不需要手动拼接路径:
from pathlib import Path name = input("Template Name: ") def folders_creation(): base_dir = Path("D:/JoyTemplates Remastered/Templates") / name sub_folders = ["Etsy Files", "Editing Files"] for folder in sub_folders: (base_dir / folder).mkdir(parents=True, exist_ok=True)
parents=True参数会自动创建不存在的父级目录,不需要提前创建根目录。
内容的提问来源于stack exchange,提问作者Joy
相关产品推荐
相关产品推荐

