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

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

1.准备工作

需要两个库支持openpyxl和os
安装

pip install openpyxl

在这里插入图片描述

2.代码思路

打算先用openpyxl库的函数来读取excel,把数据拿出来以后放在一个字典里,然后把字典的数据用//拼接成一个路径。
可以偷懒直接在excel的目录下生成文件夹数据就好。
然后用os的库来创建文件夹。
os.makedirs()可以用来创建文件夹

3.测试数据

创建了一个excel文件。计划是创建一个学校文件夹,下面有一小和二小。然后分别对应年级和班级用来测试
在这里插入图片描述

4.代码部分

import openpyxl
import osdef parse_excel(excel_path):workbook = openpyxl.load_workbook(excel_path)#打开excelsheet = workbook.active#获取当前excel的数据directory_stack = []  # 创建一个字典用来装目录for row in sheet.iter_rows(min_row=1, values_only=True):#min_row用来控制从第几行开始,默认是1for 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数据并创建文件目录树-全解析过程及逻辑

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/31436.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

AI穿戴设备是未来手机的终结者?中国AI商业化的未来预测

AI技术的发展正处于商业化应用的关键阶段,而中国在互联网时代已凭借商业化应用逆袭。AI算法大模型虽强大,但真正普惠民众需与设备深度结合。穿戴式智能设备就成为了新战场,AI算法与穿戴设备结合能释放更大工作效率。私人助理AI将成趋势&#…

锐捷统一上网行为管理与审计系统 static_convert.php 前台RCE漏洞复现

0x01 产品简介 锐捷统一上网行为管理与审计RG-UAC系列是星网锐捷网络有限公司自主研发的上网行为管理与审计产品,具备的上网行为日志审计功能,能够全面、准确、细致的审计并记录多种上网行为日志,包括网页、搜索、外发文件、邮件、论坛、IM等等,并对日志数据进行统计分析,…

开发者上架ios系统iphone苹果xcode签名的封装应用ipa文件用于四个分类怎么选择打包方式?苹果App打包方式及其应用场景分析

作为一名代码研发工程师,在苹果应用开发过程中,我们需要了解和掌握各种打包方式。本文将详细介绍苹果App有哪些打包方式,以及每种方式的代表、作用、优势和应用场景。 1. iOS App Store Deployment(iOS应用程序商店部署&#x…

【杂记-浅谈物理层-数据链路层-网络层数据传输过程】

OSI各层传输的数据单位 一、物理层1、概述2、功能 二、数据链路层1、概述2、功能 三、网络层1、概述2、功能 一、物理层 1、概述 物理层是OSI模型的最底层,负责在物理媒介上传输比特流,即二进制的0和1。它定义了物理设备的接口类型、传输速率、电缆标准…

gstreamer+qt5实现简易视频播放器

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、安装环境1.QT52.gstreamer 二、代码1.Windows实现 三、测试效果总结 前言 最近在研究mpp,通过gstreamer实现了硬解码,但是我在想我…

ROS实验课(三)

write in advance 此次实验课给我的生活来了沉重的一击,不单单是因为没有做出来,还因为我卡在了 插件 缺失 而无法解决。之前对待实验课,能在操作流程之外有暇思考具体的实现,此次只能记录简单的操作流程部分。 老规矩&#xff…

小米手机怎么用代理换ip:步骤详解与实用指南

在数字化时代,网络安全与隐私保护日益受到重视。对于小米手机用户而言,使用代理换IP已成为提升网络安全性、访问特定网站或绕过地域限制的有效手段。本文将详细介绍如何在小米手机上设置代理以更换IP地址,帮助用户更好地保护个人信息和享受更…

javascript浏览器对象模型

BOM对象: BOM 是浏览器对象模型的简称。JavaScript 将整个浏览器窗口按照实现的功能不同拆分成若干个对象; 包含:window 对象、history 对象、location 对象和 document 对象等 window对象: 常用方法: 1.prompt();…

文化保护与数字化时代:Facebook的文化责任

随着数字化时代的到来,全球各地的文化遗产和传统面临着前所未有的挑战和机遇。作为全球最大的社交网络平台之一,Facebook在连接亿万用户的同时,也肩负着重要的文化责任。本文将深入探讨Facebook在文化保护和传承方面的作用和责任,…

入门Rabbitmq

1、什么是消息队列 消息队列:应用之间传递消息的方式,允许应用程序异步发送和接收消息,不需要连接对方 消息:文本字符串,对象.... 队列:存储数据。先进先出 2、应用场景 ①库存系统挂掉之后 MQ会等待&…

修改vscode的主题颜色

1、首选项--主题--颜色主题 2、选择一个喜欢的颜色主题 这样就可以了。

推动产业数字化转型,六个方面引领变革

从工业经济时代走向数字经济时代,世界经济发生着全方位、革命性的变化,产业数字化便是最显著的表现之一。当前,产业数字化不断深入发展,平台经济、工业互联网、智能制造等新业态、新模式不断涌现,成为了数字经济的重要…

深度分析:React Native、Flutter、UniApp、Taro、Vue的差异

深度分析:React Native、Flutter、UniApp、Taro、Vue React Native 优势: 跨平台代码共享:使用JavaScript和React,可以为iOS和Android开发应用,代码复用率高。活跃社区和生态系统:React和React Native有庞大的社区&a…

chatgpt的原理是什么

ChatGPT 是基于 OpenAI 开发的 GPT(Generative Pre-trained Transformer)系列模型,它的原理依赖于深度学习、自然语言处理(NLP)以及 Transformer 架构。以下是 ChatGPT 的工作原理的详细解释: 1. Transform…

php上传zip压缩包到服务器并解压,解析压缩包内excel表格数据导入到数据库

需求: 1.需要管理后台将excel表格中的每条单词数据导入到数据库中. 2.每条单词数据对应的图片和音频文件需要上传到服务器中. 为了让客户上传数据方便,考虑了一下决定通过后台上传压缩包的方式实现 测试压缩包: 压缩包的目录结构 管理后台导入教材 public function upload…

深度学习算法informer(时序预测)(五)(informer整体模型)

整体架构如图 代码如下 lass Informer(nn.Module):def __init__(self, enc_in, dec_in, c_out, seq_len, label_len, out_len, factor5, d_model512, n_heads8, e_layers3, d_layers2, d_ff512, dropout0.0, attnprob, embedfixed, freqh, activationgelu, output_attention …

判断101 - 200之间有多少个素数,并输出所有素数。

题目:判断101 - 200之间有多少个素数,并输出所有素数。 解法一:程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除,则表明此数不是素数,反之是素数。 void ma…

鸿蒙开发通信与连接:【@ohos.wifi (WLAN)】

WLAN 说明: 本模块首批接口从API version 6开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。 导入模块 import wifi from ohos.wifi;wifi.isWifiActive isWifiActive(): boolean 查询WLAN是否已激活。 需要权限: ohos.p…

stable diffusion 模型和lora融合

炜哥的AI学习笔记——SuperMerger插件学习 - 哔哩哔哩接下来学习的插件名字叫做 SuperMerger,它的作用正如其名,可以融合大模型或者 LoRA,一般来说会结合之前的插件 LoRA Block Weight 使用,在调整完成 LoRA 模型的权重后使用改插件进行重新打包。除了 LoRA ,Checkpoint 也…

PCL 拟合二维椭圆(迭代法)

文章目录 一、简介二、实现代码三、实现效果参考资料一、简介 一般情况,我们会用椭圆拟合二维点,用椭球拟合三维点。在n维中,这些对象被称为超椭球体,由二次方程隐式定义 超椭球的中心是n1向量C,nn矩阵S是正定的,n1向量X是超椭球上的任意点。矩阵S可以用特征分解,S = R…