Python实战项目Excel拆分与合并——合并篇

在实际工作中,我们经常会遇到各种表格的拆分与合并的情况。如果只是少量表,手动操作还算可行,但是如果是几十上百张表,最好使用Python编程进行自动化处理。下面介绍两种拆分案例场景,如何用Pandas实现Excel文件的合并。

下面介绍两个合并案例,

  • 批量将不同的的工作簿合并到同一个Excel文件。
    假设现在有3张表格,内部存储了各个班级的成绩数据。现在需要将其汇总到同一个工作簿中。

    import pandas as pd
    import glob

    工作簿列表,将要合并的不同的工作簿找到

    workbooks = glob.glob('三年*班.xlsx', recursive=True)

    df = pd.DataFrame()

    定义一个空列表,用于添加每个工作簿的df数据

    df_lst = []
    for i in workbooks:
    df = pd.read_excel(i)
    df_lst.append(df)

    合并df_lst列表

    df_all = pd.concat(df_lst)

    合并导出

    df_all.to_excel('三年级总成绩单.xlsx', index=False)

最终效果如下图:

  • 批量将不同的工作表合并到同一个Excel文件
    假设现在有一个工作簿,内部的不同工作表存储了各个班级的成绩数据。现在需要将其汇总到同一个工作簿中。如下图所示:

代码如下:

复制代码
import pandas as pd

sheet_names = pd.ExcelFile('三年级分班成绩单.xlsx').sheet_names

# 定义一个空列表
df_lst = []
for sheet in sheet_names:
    df = pd.read_excel('三年级分班成绩单.xlsx', sheet_name=sheet)
    df_lst.append(df)

# 合并数据
df_all = pd.concat(df_lst)
df_all.to_excel('三年级总成绩单_合并.xlsx', index=False, sheet_name='总成绩')

调用ExcelFile()方法,会得到一个ExcelFile对象。该对象有一个很好用的sheet_names属性,它能够获取当前表格中所有工作表的名称,并以一个列表返回。利用for循环遍历每个工作表,并读取其中的数据。然后调用append()方法,将它们都合并到df_all,最后调用to_excel()方法,将合并后的数据导出为Excel文件,最后效果如下图:

以上的案例的相关知识可以通过小蜜蜂AI网站的GPT问答得到更多的帮助,网址:https://zglg.work

相关推荐
vx-程序开发2 分钟前
基于机器学习的动漫可视化系统的设计与实现-计算机毕业设计源码08339
java·c++·spring boot·python·spring·django·php
爱睡懒觉的焦糖玛奇朵14 分钟前
【从视频到数据集:焦糖玛奇朵的魔法工具Video To YOLO Dataset】
人工智能·python·学习·yolo·音视频
石榴树下的七彩鱼1 小时前
医疗票据 OCR 识别 API 多场景落地指南:医保结算 + 商保理赔 + 医疗信息化(附 Python/Java 完整示例)
java·python·ocr·石榴智能·医疗票据ocr·医保结算·ocrapi
idingzhi1 小时前
A股量化策略日报(2026年05月22日)
android·开发语言·python·kotlin
song5011 小时前
多卡训练加速:HCCL 集合通信实战
分布式·python·flutter·ci/cd·分类
江上清风山间明月2 小时前
如何将python开发的window应用打包成exe
开发语言·python·exe·打包
知识分享小能手2 小时前
Flask入门学习教程,从入门到精通, Flask模板 — 完整知识点与案例代码 (2)
python·学习·flask
不懒不懒2 小时前
基于 Flask —— 异步任务处理接口服务
后端·python·flask
happybasic2 小时前
Python库升级标准流程~
linux·前端·python
彦为君2 小时前
JavaSE-11-BIO/NIO/AIO(多人聊天室)
java·开发语言·python·ai·nio