python根据excel的文件创建文件夹

这几天要整理一点文档,需要批量生成一些文件夹,(其实也可以进一步自动生成各种文档),用到了py的功能,在此记录一下。

1.准备工作

需要两个库支持openpyxl和os

安装

python 复制代码
pip install openpyxl

2.代码思路

打算先用openpyxl库的函数来读取excel,把数据拿出来以后放在一个字典里,然后把字典的数据用//拼接成一个路径。

可以偷懒直接在excel的目录下生成文件夹数据就好。

然后用os的库来创建文件夹。

os.makedirs()可以用来创建文件夹

3.测试数据

创建了一个excel文件。计划是创建一个学校文件夹,下面有一小和二小。然后分别对应年级和班级用来测试

4.代码部分

python 复制代码
import openpyxl
import os

def parse_excel(excel_path):
    workbook = openpyxl.load_workbook(excel_path)#打开excel
    sheet = workbook.active#获取当前excel的数据
    directory_stack = []  # 创建一个字典用来装目录
    for row in sheet.iter_rows(min_row=1, values_only=True):#min_row用来控制从第几行开始,默认是1
        for i, cell_value in enumerate(row):
            if cell_value is not None and cell_value != "@":
                directory_stack = directory_stack[:i]  # 清空目录栈中当前行级别及以下的目录,                
                directory_stack.append(cell_value)  # 将当前目录加入目录栈
                directory_path = "\\".join(directory_stack)  # 构建完整的目录路径
                folder_path = excel_path.replace(os.path.basename(excel_path), "") + directory_path#把目录拼接在当前excel的当前目录下
                os.makedirs(folder_path, exist_ok=True)  # 创建目录,如果目录已存在则忽略

parse_excel(r"D:\data\testFolder.xlsx")

5.测试结果

执行后,生成一个文件夹。检查了下数据,ok

想了下自动生成word或者excel路径也是想通的,下一次用到或者有空时再更新~~周五愉快!下班!

参考文档
Python读取excel数据并创建文件目录树-全解析过程及逻辑

相关推荐
带娃的IT创业者19 分钟前
《Python实战进阶》专栏 No.3:Django 项目结构解析与入门DEMO
数据库·python·django
HealthScience1 小时前
【异常错误】pycharm debug view变量的时候显示不全,中间会以...显示
ide·python·pycharm
豌豆花下猫2 小时前
Python 潮流周刊#90:uv 一周岁了,优缺点分析(摘要)
后端·python·ai
杜大哥2 小时前
如何在WPS打开的word、excel文件中,使用AI?
人工智能·word·excel·wps
橘猫云计算机设计2 小时前
基于SSM的《计算机网络》题库管理系统(源码+lw+部署文档+讲解),源码可白嫖!
java·数据库·spring boot·后端·python·计算机网络·毕设
小伍_Five2 小时前
从0开始:OpenCV入门教程【图像处理基础】
图像处理·python·opencv
m0_748245342 小时前
python——Django 框架
开发语言·python·django
java1234_小锋3 小时前
一周学会Flask3 Python Web开发-客户端状态信息Cookie以及加密
前端·python·flask·flask3
B站计算机毕业设计超人4 小时前
计算机毕业设计Python+DeepSeek-R1高考推荐系统 高考分数线预测 大数据毕设(源码+LW文档+PPT+讲解)
大数据·python·机器学习·网络爬虫·课程设计·数据可视化·推荐算法
@LitterFisher4 小时前
Excell 代码处理
前端·javascript·excel