使用使用Python工具包工具包Openpyxl进行进行Excel处理处理
目录目录
1 背景
2 相关资料
3 Excel结构
4 Openpyxl的总结
4.1 搭建环境
4.2 导入工具包
4.3 读取文件
4.4 按行读取,按列读取
4.5 读取值
4.6 访问和修改cell
4.7 合并单元格
4.8 存储
4.9 其它
4.9.1 文件格式
4.9.2 拷贝值和样式
1 背景背景
前两天家里人有一个工作要做:把一张从系统里导出来的excel表分割成多个长度不统一的部分,而且分割以后需要提取里面的姓名等分别分发给对应的人。观察表格以后我发现每一
个分割部分都有重复的标题,而且需要提取的姓名等信息的位置相对标题是固定的,于是想到写代码来识别标题进行分割,然后再提取姓名分别导出。
先是查到excel自带的VBA,但是感觉不太习惯这个代码风格,又查到在python里用pandas,xlrd,openpyxl等可以处理excel,于是进行尝试。最后选定了调用比较方便、交互很人性
化的openpyxl,大概花了两个多小时解决了问题,把每个人的表格都分别导出,而且姓名等信息作为文件名,结果还不错。
下面就稍微总结一下。
2 相关资料相关资料
手册:这是有人在简书上翻译的openpyxl的手册,很短小精炼,看完后表格的基本操作都能做了。
官方文档:如果要深入学习或使用高级功能还是要看文档
看相关资料前我建议我们先把excel的结构回顾一下,这样操作起来会更得心应手。
3 Excel结构结构
之所以说openpyxl交互人性化是因为它的结构就是根据excel的结构进行设计的。首先来回顾一下excel:
图中是一个新建excel文件打开后的样子,我们可以把它想象成一本账本:
每一个excel文件是一个workbook(一本账本)
每一个workbook里可以创建多个worksheet(在每一本账本里有很多页)
每一个worksheet里有很多行rows和很多列columns,行标用数字表示,列标用字母表示
行与列的交叉处是一个单元格cell(一条记账),每个cell有很多的属性:
评论0