青岛制作企业网站,网站开发总结与收获,海南网页设计公司排名,移动互联网营销公司我们在写测试用例的时候#xff0c;是创建一个表格.xlsx#xff0c;然后把各种条件加到这张表格中去#xff0c;所以#xff0c;如何对excel表格操作#xff0c;是相当重要的一环#xff0c;那么#xff0c;接下来#xff0c;这篇博客就直接教会大家如何通过python去处…我们在写测试用例的时候是创建一个表格.xlsx然后把各种条件加到这张表格中去所以如何对excel表格操作是相当重要的一环那么接下来这篇博客就直接教会大家如何通过python去处理平时工作中用到的测试用例表格我们一步一步来慢慢的给各位同学讲明白。
首先给大家先补个基础的常识就是你对一个excel的了解有多少看下图所示一、excel操作三大对象
workbook 工作薄一个excel文件会被加载为一个工作薄对象workbook
form 表单excel文件中每个sheet表达会被加载成一个工作表对象sheet
cell 单元格工作表中的每一个格子就是一个单元格即表格对象cell
好先把这些基础的知识先了解因为excel主要就是操作这三个对象workbook、sheet、cell
以下我拿一段代码举例在用python操作excel时先要安装一个openpyxl,如何安装安装完成以后开始建一个表格文件.xlsx,然后复制或者剪切到python的具体文件夹目录下以下是我自己随意建的表格代码如下
importopenpyxl#第一步将excel文件加载到一个工作薄对象中
wb openpyxl.load_workbook(abc.xlsx)#第二步选择文件中的表单
sh wb[login]#第三步读取内容 cell表示单元格
res sh.cell(row1, column1) #第一行第一列
print(res.value) #打印出 111以上就是简单的示例读取某个单元格的内容
二、数据的写入
(单独用的不多不算重点了解即可)
关于excel数据的写入单独用的不多一般会和会面的读取数据写入数据一起结合用现在只是单独拿出来讲解先做个大概的了解可以总结以下四步规律
第一步将excel文件加载到一个工作薄对象中
wb openpyxl.load_workbook(文件名)
第二步选择文件中的表单
sh wb[表单名]
第三步往表格中写入数据
sh.cell(row行, column值, value写入的值)
第四步保存
wb.save(文件名)
注意在往excel中写入数据的时候文件不能处于一个打开的状态否则会报错
importopenpyxl#第一步将excel文件加载到一个工作薄对象中
wb openpyxl.load_workbook(abc.xlsx)#第二步选择文件中的表单
sh wb[login]#第三步往表格中写入数据
sh.cell(row1, column1, valuejack)#第四步保存
wb.save(abc.xlsx) #打开表格看111已经变为jack
三、数据的批量读取
比如给你一张表格把表格的内容一次性读取出来怎么办如何操作如何用python来实现
importopenpyxl#第一步将excel文件加载到一个工作薄对象中
wb openpyxl.load_workbook(yyy.xlsx)#第二步选择文件中的表单
sh wb[login]
reslist(sh.rows)for item inres:for c initem:print(c.value, end )print() #起着换行的作用四、excel用例数据读取组装成列表嵌套字典的格式
先给大家看一下这张表 testcases 我们想把它读取出来转化成开头的那种列表中嵌套字典的模式怎么来弄有的同学要问为什么要弄成那种格式因为要和ddt结合起来使用转化成这种格式方便ddt的使用只要转化成这个列表中嵌套字典的格式以后可以直接套用
importopenpyxl#第一步将excel文件加载到一个工作簿对象中
wb openpyxl.load_workbook(testcases.xlsx)#第二步选择文件中的表单
sh wb[login]
reslist(sh.rows)#获取第一行的单元格
title []#遍历第一行所有的单元格将格子中的值添加到列表title中
for c inres[0]:
title.append(c.value)
cases_data[]#遍历除第一行之外所有的行
for row in res[1:]:
data[]for c inrow:
data.append(c.value)
itemdict(zip(title, data))
cases_data.append(item)print(cases_data)五、excel的封装
importopenpyxlclassExcel:def __init__(self, filename, sheet_name):
self.filenamefilename
self.sheet_namesheet_namedefread_data(self):读数据
#第一步将excel文件加载到一个工作簿对象中
wb openpyxl.load_workbook(self.filename)#第二步选择文件中的表单
sh wb[self.sheet_name]
reslist(sh.rows)#获取第一行的单元格
title []#遍历第一行所有的单元格将格子中的值添加到列表title中
for c inres[0]:
title.append(c.value)
cases_data[]#遍历除第一行之外所有的行
for row in res[1:]:
data[]for c inrow:
data.append(c.value)
casedict(zip(title, data))#print(case)
cases_data.append(case)returncases_datadefwrite_data(self, row, column, value):写数据
#第一步将excel文件加载到一个工作簿对象中
wb openpyxl.load_workbook(self.filename)#第二步选择文件中的表单
sh wb[self.sheet_name]
sh.cell(rowrow, columncolumn, valuevalue)
wb.save(self.filename)
未完待续。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。