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

news/2024/7/21 5:10:15 标签: python, 自动化, excel

excel_0">excel文件的工作表拆分


文章目录

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


前言

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


一、需要引入哪些库

代码如下:

python">from openpyxl import load_workbook
import pandas as pd

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


二、用户输入模块

代码如下:

python">print('请输入excel文档完整路径(例子:E:\BaiduNetdiskDownload\你好.xlsx):', end='')
excel_path = input()

print('打算在哪个目录下批量生成(例子:D:\dsest):', end='')
parent_directory = input()

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


excel_47">三、读取excel文档信息

代码如下:

python"># 读取包含多个工作表的Excel文件
wb = load_workbook(excel_path)

# 获取所有工作表的名字
sheet_names = wb.sheetnames

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


四、遍历保存工作表

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

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

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

代码如下:

python">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.指定路径保存文档

代码如下:

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

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


总结

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

在这里插入图片描述


http://www.niftyadmin.cn/n/5258114.html

相关文章

巧妙的使用WPF中的资源

其实,在wpf中,最核心的就是xaml,因为只有xaml,才能体现出用的是wpf,而不是普通的cs文件,cs文件在winform中等等程序都可以使用的,唯独xaml才是wpf中最重要的,最精华的东西&#xff0…

MagicAnimate模型:颠覆传统,AI让照片舞动起来

前言 近日,新加坡国立大学与字节跳动合作开发的MagicAnimate引发了科技界的广泛关注。这一人像动画技术,能够将静态图片转化为动态视频,为AI动画领域带来了革命性的突破。 huggingface模型下载:https://huggingface.co/zcxu-eric…

【STM32】DMA直接存储器存取

1 DMA简介 DMA(Direct Memory Access)直接存储器存取 可以直接访问STM32的存储器的,包括运行SRAM、程序存储器Flash和寄存器等等 DMA可以提供外设寄存器和存储器或者存储器和存储器之间的高速数据传输,无须CPU干预,节…

Spring boot注解

1.RestController RestController 注解用于标识一个类,表示该类的所有方法都返回JSON或XML响应,而不是视图页面。它是Controller和ResponseBody的组合 2.RequestMapping RequestMapping 注解用于映射HTTP请求到控制器方法或类。它可以用于类级别和方法级别,用于定…

基于chaos混沌的彩色图像加解密系统matlab仿真

目录 1.算法运行效果图预览 2.算法运行软件版本 3.部分核心程序 4.算法理论概述 4.1 混沌理论简介 4.2 基于混沌的图像加密原理 4.3 数学公式与实现过程 5.算法完整程序工程 1.算法运行效果图预览 2.算法运行软件版本 matlab2022a 3.部分核心程序 .................…

Axure元件的介绍使用以及登录界面和个人简历的绘制

目录 一、Axure元件介绍 1.1 简介 1.2 特点 1.3 元件操作 二、基本元件的使用 2.1 矩形和圆形 2.2 图片 2.2.1 图片元件特点 2.2.2 具体操作 2.3 占位符 2.3.1 使用规范方法举例 2.4 文本元件 2.4.1 图示 2.5 热区 2.5.1 图示 2.5.2 热区辅助页面排版 2.6 线段…

Baumer工业相机堡盟工业相机如何通过BGAPISDK获取相机的各种信息如SN/ID等等(C#)

Baumer工业相机堡盟工业相机如何通过BGAPISDK获取相机的各种信息如SN/ID等等(C#) Baumer工业相机Baumer工业相机通过SDK获取相关生产信息的技术背景通过SDK获取相机信息的代码分析获取Baumer工业相机相关信息Baumer工业相机相关参数信息获取的测试 Baume…

深度探索Linux操作系统 —— 构建根文件系统

系列文章目录 深度探索Linux操作系统 —— 编译过程分析 深度探索Linux操作系统 —— 构建工具链 深度探索Linux操作系统 —— 构建内核 深度探索Linux操作系统 —— 构建initramfs 深度探索Linux操作系统 —— 从内核空间到用户空间 深度探索Linux操作系统 —— 构建根文件系统…