Python 自动化之修理excel文件(一)

excel文件的工作表拆分


文章目录

  • excel文件的工作表拆分
  • 前言
  • 一、需要引入哪些库
  • 二、用户输入模块
  • 三、读取excel文档信息
  • 四、遍历保存工作表
    • 1.获取并暂存工作表信息
    • 2.指定路径保存文档
  • 总结


前言

本文就简单介绍一下,如何将含有多个sheet表的excel文档–按照顺序–在指定目录下–将每个excel表保存成一个单独的文档;且新建的文档也会以工作表的名字来命名。


一、需要引入哪些库

代码如下:

from openpyxl import load_workbook
import pandas as pd

load_workbook:主要用来读取包含多个工作表的Excel文件
pd:创建一个新的DataFrame(用于表达二维数据)来存储数据


二、用户输入模块

代码如下:

print('请输入excel文档完整路径(例子:E:\BaiduNetdiskDownload\你好.xlsx):', end='')
excel_path = input()print('打算在哪个目录下批量生成(例子:D:\dsest):', end='')
parent_directory = input()

第一块代码:按照提示的格式输入相应的excel文档。
第二块代码:输入要在哪个目录保存拆分的文件。


三、读取excel文档信息

代码如下:

# 读取包含多个工作表的Excel文件
wb = load_workbook(excel_path)# 获取所有工作表的名字
sheet_names = wb.sheetnames

先是读取整个文档的信息,然后从中获取它的工作表的名字。下面会根据这个工作表的名字来做文章。


四、遍历保存工作表

这个的思路是:每遍历一个工作表,就会获取它的数据,然后生成新的excel文档保存它的数据,直至遍历完所有的工作表。

注意:以下代码都是在for循环结构下运行的。

1.获取并暂存工作表信息

代码如下:

i = 0
# 遍历所有工作表并将其保存为单独的Excel文件
for sheet in sheet_names:i += 1#获取工作表的数据ws = wb[sheet]data = ws.values # 创建一个新的DataFrame来存储数据df = pd.DataFrame(data)

这里是遍历工作表并获取它的信息。
pd.DataFrame(data)的用处是常用来存储二维数据(懂了吧)。


2.指定路径保存文档

代码如下:

    # 将当前工作表保存为新的Excel文件output_file_name = str(f"{i}-{sheet}.xlsx")# 添加一个斜杠以确保路径正确output_path = parent_directory + '/' + output_file_name  #保存文档df.to_excel(output_path)

第一段代码:给新文档个名字
第二段代码:将用户输入的路径和名字组合起来。
第三段代码:根据第二段提供的信息,相应的生成文件。


总结

代码不多,很容易实现,小伙伴们快来试一下。
下篇我出个稍微复杂一点的,如何自动的去读取一个目录里的所有excel文档并合成一个文档。

在这里插入图片描述

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

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

相关文章

解决ES伪慢查询

一、问题现象 服务现象 服务接口的TP99性能降低 ES现象 YGC:耗时极其不正常, 峰值200次,耗时7sFULL GC:不正常,次数为1但是频繁,STW 5s慢查询:存在慢查询5 二 解决过程 1、去除干扰因素 从现象上看应用是由于某种…

【JavaEE】锁的策略

作者主页:paper jie_博客 本文作者:大家好,我是paper jie,感谢你阅读本文,欢迎一建三连哦。 本文于《JavaEE》专栏,本专栏是针对于大学生,编程小白精心打造的。笔者用重金(时间和精力)打造&…

NVH软件导入音频文件

我们经常会遇到一种情况是:车主上下班路上经常会听到一个异响,但车交到我们手上,我们怎么在外面去试车,都听不到这个异响,或者条件达不到重现不了这个异响。如果是这样,我们是不是有点崩溃?但&a…

ETLCloud的应用策略——实时数据处理是关键

一、ETLCloud是什么? ETLCloud又称数据集成(DataOps),是RestCloud旗下的一款数据仓库管理工具,通过自动化数据转换和集成来实现企业内部和外部数据的无缝对接,从而帮助企业快速获取准确的数据信息&#xff…

git的安装及使用

git的安装及使用 git的安装 官网地址:https://git-scm.com/download/win 在任何位置输入bash或sh,进入git 设置用户名邮箱。 git config --global user.name “wfyfly” git config --global user.email 2423217861qq.com 查看配置信息 git config --list --globa…

【VMware安装及虚拟机配置】

1. 下载VMware 进入 VMware Workstation 17 Pro下载链接 下拉到如下位置,点击DOWNLOAD 2. 安装VMware 参考:虚拟机VMware下载与安装教程 本次安装是vmware 17,安装步骤差不多,只参考第二部分即可。 3. 激活VMware 密钥&…

【ITRA】赛事方收费标准-2024

一、查看ITRA收费情况 1、赛事方 必须注册赛事方的账户进入ITRA 看到的这个100欧,只是一个起步价格,并不是所有价格 不过这个对于一个赛事方可以cover一年的费用 2、更多费用 想当更大的怨种可以 往下拉满

多维时序 | Matlab实现GA-LSTM-Attention遗传算法优化长短期记忆神经网络融合注意力机制多变量时间序列预测

多维时序 | MATLAB实现BWO-CNN-BiGRU-Multihead-Attention多头注意力机制多变量时间序列预测 目录 多维时序 | MATLAB实现BWO-CNN-BiGRU-Multihead-Attention多头注意力机制多变量时间序列预测预测效果基本介绍模型描述程序设计参考资料 预测效果 基本介绍 多维时序 | Matlab实…

BearPi Std 板从入门到放弃 - 先天神魂篇(6)(RT-Thread 按键中断响应)

简介 使用BearPi IOT Std开发板及主板自带两颗按键与用户灯, 实现按键触发中断控制灯亮灯灭 主板: 主芯片: STM32L431RCT6 LED : PC13 \ 推挽输出\ 高电平点亮 串口: Usart1 KEY1 : PB2 \ 上拉 \ 按下下降沿触发(一次)/上下沿触发(两次,实现按下开、松开关) KEY2 :…

j1冒个泡-排序的演变--扩展题

100 哥随机数 。从小到大排序 #include <stdio.h> #include <time.h> #include <stdlib.h> #define NUM 100 void bbule(int *arr,int size){for (int i 0; i < size-1; i)// 运行O(n)次{/* code */for (int j 0; j < size-1-i; j)// 要减i哟{/* co…

vue中预览pdf的方法

使用vue-pdf 备注&#xff1a;这里只介绍了一页的pdf <div class"animation-box-pdf"><pdf :src"http://xxxx" /> </div>import Pdf from vue-pdf // src可以是文件地址url&#xff0c;也可以是文件流blob&#xff08;将blob转成url&a…

使用kibana查看es数据

前提 已安装好es还有kibana&#xff0c;启动es及kibana 修改kibana配置文件 在kibana文件中配置es的地址及索引&#xff0c;我的kibana安装在mac端了 修改配置文件 /usr/local/opt/kibana/config/kibana.yml 重启kibana 配置kibana 下面查询数据 例如查询 traceId 为192…