前几天,收到老板的一个需求,需要把从数据库导出来的excel文件中“审核未通过原因”这一列作一个统计,统计未通过原因出现的次数,因为数据量比较庞大,我就想着能否用robot框架去做,网上一搜,果然有这个库:ExcelLibrary,这个库支持对excel文件进行处理。

首先,引入ExcelLibrary库,操作Excel文件

安装命令 pip install robotframework-excellibrary

安装导入完成之后,我用f5命令大概看了一下常用的一些关键字:

Open Excel 打开Excel文件

Get Row Count 获取行数

Get Column Count 获取列数

Get Row Values 获取某一行的值

Get Column Values 获取某一列的值

Read Cell Data By Coordinates 通过列行编号获取值

Read Cell Data By Name 按名称读取单元格数据

也看了一下这个library的官方文档,有一些注意事项:

1.只支持xls格式的Excel文档

2.Excel表格中的数值,代码读取后会显示为浮点型

如123,读取后显示为123.00,造成传参不一致

解决方案:设置单元格格式---->文本

3.读取每行或每列数据,存储到list变量中,是一个二维数组

如(A1,123)(B1,张三)

4.数组的位置编号都是从0开始的

好啦,现在我们开始来完成,老板提的需求了

首先我们要打开这个excel文件,并获取这一列的信息:

获取获取列信息后,我们看到,我们获取到的信息是一个二维数组,它不仅包含了我们需要的信息,还包含了我们不需要的坐标信息,这样就加大了我们统计的难度。

那么,接下来我们要做的,就是把二维数组转变为一维数组,框架库里面没有合适的关键字,这时我们用强大的Evaluate关键字,这是一个内置的关键字,为什么说它很强大呢?当框架里面没有合适封装的关键字时,我们可以用这个关键字执行python底层代码并返回结果:

结果如下:

这样,二维数组就变成了一维数组,接下来,我们就要统计这个数组里面相同元素,以字典dict形式返回元素和数量

这个地方由于没有合适的关键字,我自定义了一个函数,来统计数组里面相同元素的个数

这样就大功告成啦!!!

当然,这个库还有很多其他的功能,比如说将获取到的数据,存入到excel文件并保存等等,这些功能在以后慢慢探索吧!

觉得好的请点个赞,谢谢!

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐