软件测试|Python 操作 Excel 制作报表,不要太方便
获取更多技术知识
前言
今天我们介绍的是 Python 操作 Excel 制作报表,我们需要用到的库是 openpyxl,我们主要使用的功能有下列几个功能
插入与查询数据
分类数据统计
数据可视化
字体颜色修改
基本操作
表格初始数据如下图所示:

我们先熟悉一下 openpyxl 库,方便我们后续更高级的用法
安装环境我们需要安装 openpyxl 库,安装也很简单,一条命令解决问题,在 pycharm 中安装也可以,具体方法和安装其他库一致,这里不做赘述
导入 Excel 数据集,代码如下
打印出工作表中的值我们通过传入单元格的位置来打印其中的数值,代码如下
修改单元格的值
在保存过之后,我们来看一下是否成功修改了单元格的值,如下图所示:

我们看到单元格的值被成功修改了。
添加一个工作表我们可以在现有的 Excel 文件中添加一个 sheet,代码如下:
注:此处我们没有保存,所以文件中不会出现新的 sheet
插入数据我们通过代码新建一个 Excel 文件,并在文件中写入部分数据
我们来看一下最后出来的结果,如下图所示:

我们尝试来多插入几条数据,代码如下:
结果如下:

插入行与删除行插入某一行的话,调用的则是 insert_rows()方法,具体代码如下:
出来的结果如下图所示

同理,如果是想要去删除某一行的数据的话,调用的则是 delete_rows()方法,具体代码如下:
查看结果,可以看到插入的行已经被删除

插入列与删除列插入列删除列的操作与插入行删除行的操作类似,插入列用到的方式是 insert_cols(),代码如下
删除列的方法是 delete_cols()
数据分析与可视化
openpyxl 是一个非常强大的第三方库,结合 Python,Excel 能实现的操作,python+openpyxl 都可以实现,现在我们就来使用一下稍微高端一些的功能,实现数据的分析和可视化。
1.数据准备因为手头没有实际的数据,所以现在只能自己随便生成一批数据,不严谨,请大家见谅。
数据如下:
将数据写入 Excel,代码如下:
表格如图所示:

平均值的计算实现我们来指定某一列,例如我们要计算各品牌 B 级车的平均销量,代码如下:
结果如下图:

3. 求和的计算实现我们现在要计算各个品牌的各自的销量总和,该怎样实现,代码如下
结果如下图:

绘制柱状图
来绘制一张柱状图,来看一下不同的品牌不同级别的汽车的销售数据如何,横坐标对应的品牌,而纵坐标对应的则是销量,另外我们根据不同的级别会用不同的颜色来标注出来,代码如下:
结果如图所示:

总结
本文只是对 openpyxl 强大功能的部分演示,如果大家想学习其他技巧,欢迎评论区留言!
搜索微信公众号: 霍格沃兹测试学院,学习更多测试开发前沿技术
评论