告别手动建文件夹:Python 批量创建指南
·
在日常 GIS 数据处理、项目资料管理等工作中,手动创建分类文件夹效率低下、易出现名称错误与层级混乱问题。本文结合POI 分类管理真实业务场景,构建两种典型批量新建文件夹的应用情景,分别覆盖单层批量创建与多层级(含子文件夹)批量创建场景,结合代码示例与场景说明,实现高效、规范的文件目录搭建,解决手动创建效率低、易出错的问题。
情景一:单层批量新建文件夹
场景描述
在 POI 数据整理、基础资料归档等工作中,需在统一根目录下批量创建一级分类文件夹(如 20 类标准 POI 目录),无需嵌套子层级,仅需一次性完成所有顶层目录创建。手动操作耗时费力,且易出现名称拼写错误、分类顺序错乱等问题,采用 Python 批量创建可实现一键生成、零误差输出。

实现代码
# 导入Python系统文件操作库
import os
# 定义要创建文件夹的根目录
root_path = r"E:\POI"
# 定义20个POI分类文件夹名称
folder_names = [
"1_餐饮服务",
"2_酒店住宿",
"3_购物服务",
"4_生活服务",
"5_休闲娱乐",
"6_旅游景点",
"7_交通设施",
"8_金融服务",
"9_医疗保健",
"10_科教文化",
"11_政府机构",
"12_公司企业",
"13_汽车服务",
"14_运动场馆",
"15_公共设施",
"16_通信服务",
"17_房产小区",
"18_农林牧渔",
"19_能源电力",
"20_工业设施"
]
# 循环遍历所有文件夹名称,逐个创建
for name in folder_names:
# 拼接完整路径:根目录 + 文件夹名
full_path = os.path.join(root_path, name)
# 创建文件夹(已存在则不报错)
os.makedirs(full_path, exist_ok=True)
# 打印创建成功信息
print("已创建文件夹:", full_path)
# 全部完成提示
print("\n✅ 20个POI分类文件夹全部创建完成!")
情景二:批量新建文件夹及其子文件夹
场景描述
在精细化 POI 数据管理、标准化项目归档等复杂场景中,仅一级目录无法满足分类需求,每个一级分类文件夹需配套专属子目录,形成层级化、结构化的目录体系,便于数据分类存储、快速检索和长期追溯。手动创建多层级目录易出现层级错乱、子文件夹漏建、结构不统一等问题,通过 Python 批量嵌套创建,可保证全量目录格式一致、完整无缺。

实现代码
import os
# 根目录路径(可根据实际修改)
root_path = r"E:\POI"
# 一级文件夹和对应的子文件夹配置
folder_config = [
{
"primary": "1_餐饮服务",
"subs": ["餐厅", "咖啡馆", "酒吧", "小吃店"]
},
{
"primary": "2_酒店住宿",
"subs": ["酒店", "宾馆", "民宿", "招待所"]
},
{
"primary": "3_购物服务",
"subs": ["商场", "超市", "便利店", "品牌店", "市场"]
},
{
"primary": "4_生活服务",
"subs": ["家政", "美容美发", "维修", "快递", "照相馆"]
},
{
"primary": "5_休闲娱乐",
"subs": ["电影院", "KTV", "健身房", "网吧", "桌游馆"]
},
{
"primary": "6_旅游景点",
"subs": ["公园", "景区", "博物馆", "古镇", "地标建筑"]
},
{
"primary": "7_交通设施",
"subs": ["机场", "火车站", "地铁站", "公交站", "停车场"]
},
{
"primary": "8_金融服务",
"subs": ["银行", "ATM", "证券网点", "保险公司"]
},
{
"primary": "9_医疗保健",
"subs": ["医院", "诊所", "药店", "体检中心", "卫生院"]
},
{
"primary": "10_科教文化",
"subs": ["学校", "图书馆", "科技馆", "培训机构", "研究所"]
},
{
"primary": "11_政府机构",
"subs": ["政府部门", "公安局", "法院", "政务中心"]
},
{
"primary": "12_公司企业",
"subs": ["工厂", "写字楼", "公司", "产业园", "企业园区"]
},
{
"primary": "13_汽车服务",
"subs": ["加油站", "4S店", "维修厂", "洗车店", "停车场"]
},
{
"primary": "14_运动场馆",
"subs": ["体育场", "游泳馆", "球场", "体育馆", "健身中心"]
},
{
"primary": "15_公共设施",
"subs": ["公共厕所", "消防站", "邮政局", "自来水厂"]
},
{
"primary": "16_通信服务",
"subs": ["运营商营业厅", "信号塔", "通信基站相关网点"]
},
{
"primary": "17_房产小区",
"subs": ["住宅小区", "公寓", "写字楼", "商住两用楼"]
},
{
"primary": "18_农林牧渔",
"subs": ["农场", "养殖场", "林场", "渔场", "农家乐"]
},
{
"primary": "19_能源电力",
"subs": ["电厂", "变电站", "加油站", "充电桩", "能源站"]
},
{
"primary": "20_工业设施",
"subs": ["工厂", "仓库", "工业园区", "生产基地"]
}
]
# 批量创建一级文件夹和子文件夹
for item in folder_config:
primary_name = item["primary"]
sub_names = item["subs"]
# 创建一级文件夹
primary_path = os.path.join(root_path, primary_name)
os.makedirs(primary_path, exist_ok=True)
print(f"✅ 已创建一级文件夹:{primary_path}")
# 创建子文件夹
for sub_name in sub_names:
sub_path = os.path.join(primary_path, sub_name)
os.makedirs(sub_path, exist_ok=True)
print(f" └─ 已创建子文件夹:{sub_path}")
print("\n🎉 所有一级文件夹和子文件夹创建完成!")
更多推荐
所有评论(0)