利用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)

测试没有问题。

相关推荐
m0_740796365 小时前
golang如何使用sync.WaitGroup_golang sync.WaitGroup并发等待使用方法
jvm·数据库·python
2401_824222695 小时前
c++如何通过重定向rdbuf来捕获第三方库的日志输出到文件【详解】
jvm·数据库·python
2401_867623985 小时前
CSS如何解决响应式文字大小调整_利用clamp函数实现流体排版
jvm·数据库·python
2501_901006476 小时前
如何使用SQL视图快速生成测试数据_模拟复杂场景
jvm·数据库·python
2401_850491656 小时前
安装宝塔面板提示端口被占用_查找并终止占用进程
jvm·数据库·python
2401_833033626 小时前
如何通过Java存储过程执行OS命令_Runtime.getRuntime().exec的封装与安全限制
jvm·数据库·python
weixin_459753946 小时前
SymPy中正确处理含整数参数的三角函数定积分:避免n=0特例干扰结果
jvm·数据库·python
tang777896 小时前
2026年国内代理IP服务商横向测评:企业级爬虫如何选型?
运维·服务器·网络·爬虫·python·代理
kay...6 小时前
EEG脑源定位(Inverse Problem/逆问题求解)四种方法
python·eeg
Be reborn6 小时前
用 Playwright 做自动化测试:如何验证网络请求并做断言
网络·python·自动化·pytest