1.简介
在进行软件接口测试或设计自动化测试框架时,一个不比可避免的过程就是: 参数化,在利用python进行自动化测试开发时,通常会使用excel来做数据管理,利用xlrd、xlwt开源包来读写excel。例如:当我们登录的账号有多个的时候,我们一般用
excel 存放测试数据,本篇文章介绍,python 读取excel 方法,并保存为字典格式。
2.官网
通过官网来查看如何使用python读取Excel,python excel官网: Python Resources for working with Excel - Working with Excel Files in Python,
1、以下是翻译后的官网文档:
2、点击“文档”
3、点击“安装说明”
4、根据以上安装说明,进行准备
3.环境准备
1、以下是小编环境是:
操作系统:win10
python环境:python3.7
2、根据官方文档先安装 xlrd 模块,打开 cmd,输入 pip install xlrd 在线安装
3、出现红色圈的内容表示xlrd安装成功
python对Excel的基本操作
1、打开电子表格文件以进行数据提取,官方文档API
2、通过工作表索引、名称获取内容
3、实例1
(1)Excel内容
(2)代码实现
(3)运行结果
(4)参考代码1
1 # coding=utf-8 2 # 1.先设置编码,utf-8可支持中英文,如上,一般放在第一行 3 4 # 2.注释:包括记录创建时间,创建人,项目名称。 5 ''' 6 Created on 2019-5-20 7 @author: 北京-宏哥 8 Project:学习和使用python读取Excel 9 ''' 10 # 3.导入模块 11 import xlrd 12 13 if __name__ == '__main__': 14 15 # excel文件全路径 16 xlPath = "C:\\Users\\DELL\\Desktop\\test.xlsx" 17 # 用于读取excel 18 xlBook = xlrd.open_workbook(xlPath) 19 # 获取excel工作簿数 20 count = len(xlBook.sheets()) 21 print(u"工作簿数为: ", count) 22 # 获取 表 数据的行列数 23 table = xlBook.sheets()[0] 24 nrows = table.nrows 25 ncols = table.ncols 26 print(u"表数据行列为(%d, %d)" % (nrows, ncols)) 27 # 循环读取数据 28 for i in range(0, nrows): 29 rowValues = table.row_values(i) # 按行读取数据 30 # 输出读取的数据 31 for data in rowValues: 32 print(data, " ",) 33 print("")
4、参考代码2
1 # coding=utf-8 2 # 1.先设置编码,utf-8可支持中英文,如上,一般放在第一行 3 4 # 2.注释:包括记录创建时间,创建人,项目名称。 5 ''' 6 Created on 2019-5-20 7 @author: 北京-宏哥 8 Project:学习和使用python读取Excel 9 ''' 10 # 3.导入模块 11 import xlrd 12 13 if __name__ == '__main__': 14 # 打开 exlce 表格,参数是文件路径 15 data = xlrd.open_workbook('C:\\Users\\DELL\\Desktop\\test.xlsx') 16 # table = data.sheets()[0] # 通过索引顺序获取 17 # table = data.sheet_by_index(0) # 通过索引顺序获取 18 table = data.sheet_by_name(u'Sheet1') # 通过名称获取 19 nrows = table.nrows # 获取总行数 20 ncols = table.ncols # 获取总列数 21 # 获取一行或一列的值,参数是第几行 22 print(table.row_values(0)) # 获取第一行值 23 print(table.col_values(0)) # 获取第一列值
5、以上代码运行结果
4.Excel存放数据(参数)
1、在 excel 中存放数据,第一行为标题,也就是对应字典里面的 key 值,如登录的参数:username,password
5.封装读取参数或者数据方法
1、最终读取的数据是多个字典的 list 类型数据,第一行数据就是字典里的 key 值,从第二行开始一一对应 value 值
2、封装好的代码如下:
3、运行结果
6.小结
1、在安装xlrd模块的时候后边,还有一些黄色的警告,小伙伴们不需要的担心,翻译看一下,是需要更新pip
2、将提示的命令选中后,回车,另起一行粘贴,运行即可将pip更新到最新版本
3、小伙伴们可能发现在运行结果的显示:只有出现数字就会有个.0,解决办法:
如果 excel 数据中有纯数字的一定要右键》设置单元格格式》文本格式,要不然读取的数据是浮点数(先设置单元格格式后编辑,编辑成功左上角有个小三角图标)
修改单元格式,运行代码结果:可以清楚看到.0没有了
4、好了关于python读取Excel的内容,就先讲解到这个,有兴趣可以看其官方文档对表格进行合并、样式设置等等系列动作!!!
每天学习一点,今后必成大神-
往期推荐(由于跳转参数丢失了,所有建议选中要访问的右键,在新标签页中打开链接即可访问)或者微信搜索: 北京宏哥 公众号提前解锁更多干货。
Appium自动化系列,耗时80天打造的从搭建环境到实际应用精品教程测试
Python接口自动化测试教程,熬夜87天整理出这一份上万字的超全学习指南
Python+Selenium自动化系列,通宵700天从无到有搭建一个自动化测试框架
Java+Selenium自动化系列,仿照Python趁热打铁呕心沥血317天搭建价值好几K的自动化测试框架
Jmeter工具从基础->进阶->高级,费时2年多整理出这一份全网超详细的入门到精通教程