前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >用Python整理Excel表格

用Python整理Excel表格

作者头像
TTTEED
发布2020-07-09 11:46:50
8990
发布2020-07-09 11:46:50
举报

一直都是拿Python来玩,今天正经一回,解决下好友的需求:

需求不复杂,读取文件夹中所有xls或xlsx表格文件,遍历每一张sheet单页,汇总所需要的数据生成新的xlsx表格。

思路

首要解决的就是xls和xlsx表格文件的读取问题。读取到数据后,对数据进行筛选重组,再写入新的xlsx文件中。

实现了单个表格的读取和写入,接下来就再添加遍历文件夹、筛选xls和xlsx格式文件的实现就大功告成了。

xlrd和xlsxwriter

xlrd是Python语言中,用来读取Excel的扩展工具。先安装xlrd后导入,代码中直接调用即可。

原本对应xlrd库的是xlwt库,但是xlwt不争气,只能写xls不能写xlsx格式,所以这里选用xlswriter模块。

读取所有xls和xlsx表格

遍历文件夹,选用os模块中的 os.walk(),返回路径、子文件夹和路径下的文件,通过对文件名后缀的筛选,将所有.xls和.xlsx文件添加到特定列表中供统一读取

数据处理

通过xlrd读取到的每行数据,代码中会被存到一个个list中,通过对python list元素的操作,我们完成对目标数据的加工和获取。

实例

由于朋友的表格数据涉及隐私,这里我拿公开的2019年和2018年国家公务员考试职位表来演示:

2018.xlsx

2019.xls

两份表格中有2万多条信息。我们从中选取“部门名称”、“招考职位”、“职位简介”、“招考人数”、“专业”及“学历”等栏目,将所有这六栏的数据汇总到同一张新xlsx表格中,并注明数据来源。

运行代码,效果不错,秒级响应,共汇总了25802条数据:

生成表格开头

生成表格结尾

回顾

回顾整个过程,思路没有问题,在接触每个模块后也作出了恰当的调整。实例中采用的表格数目很小、格式也很规范,所以代码也直接明了,方便展示代码思路和过程。

涉及到成百上千及更大量级的表格文件时,各种格式不规范导致的头疼问题就会出现了,这就要求更精确地数据加工和处理。不过也不慌,可以借助更便捷的工具和模块来进行处理,前人栽树、后人乘凉在Python里面可是很爽的,后续也会分享这方面的学习和应用。

代码下载

后台回复 表格 获取代码下载链接,稍加修改就可以解决很多基础的表格整理问题。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-02-15,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 TTTEED 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档