一、openpyxl介绍安装
1.为什么要学Excel
存测试数据
有时候有大批量的数据,存到TXT文件里面显然不是最佳的方式,我们可以存到Excel里面去,第一方便我们存数据和做数据,另一方面方便我们读取数据,比较明朗。测试的时候就从数据库中读取出来,这点是非常重要的。
存测试结果
可以批量把结果存入到Excel中,也是比较好整理数据点,比我们的TXT要好。
2.安装openpyxl
python中与excel操作相关的模块:
xlrd库:从excel中读取数据,支持xls、xlsx
xlwt库:对excel进行修改操作,不支持对xlsx格式的修改
xlutils库:在xlw和xlrd中,对一个已存在的文件进行修改。
openpyxl:主要针对xlsx格式的excel进行读取和编辑。
安装方式:pip install openpyxl
3.Excel中的三大对象
WorkBook:工作簿对象
Sheet:表单对象
Cell:表格对象
二、openpyxl对Excel的操作
创建一个工作薄:wb = openpyxl.Workbook()
新增一个sheet表单:wb.create_sheet('test_case')
保存case.xlsx文件:wb.save('cases.xlsx')
打开工作簿:wb = openpyxl.load_workbook('cases.xlsx')
选取表单:sh = wb['Sheet1'
读取第一行、第一列的数据:ce = sh.cell(row = 1,column = 1)
按行读取数据:row_data = list(sh.rows)
关闭工作薄:wb.close()
按列读取数据:columns_data = list(sh.columns)
写入数据之前,该文件一定要处于关闭状态
写入第一行、第四列的数据 value = 'result':sh.cell(row = 1,column = 4,value = 'result')
获取最大行总数、最大列总数:sh.max_row、sh.max_column
del 删除表单的用法:del wb['sheet_name']
remove 删除表单的用法:sh = wb['sheet_name'] wb.remove(sh)
[
复制代码
](javascript:void(0); "复制代码")
1 import openpyxl 2 # 创建一个工作簿
3 wb = openpyxl.Workbook() 4 # 创建一个test_case的sheet表单
5 wb.create_sheet('test_case')
6 # 保存为一个xlsx格式的文件
7 wb.save('cases.xlsx')
8 # 读取excel中的数据
9 # 第一步:打开工作簿
10 wb = openpyxl.load_workbook('cases.xlsx') 11 # 第二步:选取表单
12 sh = wb['Sheet1'] 13 # 第三步:读取数据
14 # 参数 row:行 column:列
15 ce = sh.cell(row = 1,column = 1) # 读取第一行,第一列的数据
16 print(ce.value) 17 # 按行读取数据 list(sh.rows)
18 print(list(sh.rows)[1:]) # 按行读取数据,去掉第一行的表头信息数据
19 for cases in list(sh.rows)[1:]: 20 case_id = cases[0].value 21 case_excepted = cases[1].value 22 case_data = cases[2].value 23 print(case_excepted,case_data) 24 # 关闭工作薄
25 wb.close()
[
复制代码
](javascript:void(0); "复制代码")
三.封装一个读取用例的excel类:用来实现读取数据和写入数据的功能
cases.xlsx的测试数据:
image
1.按行读取数据,存储在列表中
[
复制代码
](javascript:void(0); "复制代码")
1 import openpyxl 2 class Case: #这个类用来存储用例的
3 slots =