利用python批量读取大量Excel表格文件中指定内容并汇总

工作中出现需要从大量Excel表格文件中读取指定单元格内容并汇总到一个表格中。上网搜索一下,利用Python的pandas模块可以快速实现。openpyxl也可以,不过为了快速,以能搜到的形成代码为优先。

简单修改别人代码,实现如下。

python 复制代码
import os
import pandas as pd

or_path = "D:/xlsx"
re_path = "D:/results"

result_df = pd.DataFrame()

# 因为这个例子里,Excel文件独立在不同文件夹中,所以需要遍历所有子目录
for root, dirs, files in os.walk(or_path):
    for file in files:
        # 只处理指定文件
        if !file.endswith(".xlsx"):
            continue

        read_xls = pd.ExcelFile(os.path.join(root, file))

        # 例子中,每个文件有多个sheet,需要遍历每个sheet
        for sheetname in read_xls.sheet_name:
            # 通过sheet名字读取表格内容
            df = read_xls.parse(sheetname, header=None)
            # 通过values函数可以读取单元格内容
            # 通过Data函数可以构建表格
            read_df = pd.Data({'name':[df.values[2, 1]], 'age':[df.values[3, 1]]})

            # 拼接表格
            result_df = pd.concat([result_df, read_df])

# 输出汇总到文件
result_df.to_csv(os.path.join(re_path, "result.csv"), index = false)

测试没有问题。

相关推荐
SunnyDays10118 小时前
如何使用 C# 创建、修改和删除 Excel 中的 VBA 宏(无需Microsoft Excel)
c#·excel·vba宏·创建vba宏·修改vba宏·删除vba宏
jwn9998 小时前
Laravel11.x新特性全解析
android·开发语言·php·laravel
feifeigo1238 小时前
航天器交会的分布式模型预测控制(DMPC)MATLAB实现
开发语言·分布式·matlab
于先生吖8 小时前
支持二开与商用,JAVA 漫剧付费观看系统完整源码
java·开发语言
环黄金线HHJX.8 小时前
【从0到1】
开发语言·人工智能·算法·交互
曹牧9 小时前
Java: 从oracle表中获取一组kv序列
java·开发语言·oracle
深邃-9 小时前
【C语言】-数据在内存中的存储(1)
c语言·开发语言·数据结构·c++·算法
Lyyaoo.9 小时前
【Java基础面经】Java 注解的底层原理
java·开发语言·python
HAPPY酷9 小时前
PyCharm 终极避坑指南:环境选择、镜像加速与包管理
ide·python·pycharm
妙蛙种子3119 小时前
【Java设计模式 | 创建者模式】 抽象工厂模式
java·开发语言·后端·设计模式·抽象工厂模式