excel常用方法封装
目录
3.打开excel表中,并指定对应的sheet页方法:open
1.读取excel中的所有数据方法:read_data
2.往指定单元格写入数据方法:write_data
3.打开excel表中,并指定对应的sheet页方法:open
import openpyxl
class ReadExcel(object):
def __init__(self, filename, sheet_name):
self.filename = filename
self.sheet_name = sheet_name
# 获取工作簿对象
# self.wb = openpyxl.load_workbook(self.filename)
# 选择表单
# self.sh = self.wb[self.sheet_name]
def open(self):
# 获取工作簿对象
self.wb = openpyxl.load_workbook(self.filename)
# 选择表单
self.sh = self.wb[self.sheet_name]
def read_data(self):
self.open()
"""读取数据"""
# 需求:将注册用例读取出来,每条用例保存为一个字典(表格中的标题作为键),所有的用例放到一个列表中
datas = list(self.sh.rows)
# 获取第一行的数据,作为字典的键值
li1 = []
for i in datas[0]:
# print(i.value)
li1.append(i.value)
# print(li1)
# 创建一个空列表,用例存放到用例数据
cases = []
# 遍历除第一行之外的数据
for i in datas[1:]: # 切片
li2 = []
# 获取该行数据的值
for c in i:
values = c.value
li2.append(c.value) # 获取每个表格中的数据
# 将该行数据和第一行数据打包,打包转换为字典
case = dict(zip(li1, li2)) # 与标题和表格中的数据分装成一个测试用例case
# print(case)
# 将转换的字典添加到前面创建的空列表cases中
cases.append(case) # 集合测试用例数据
return cases
def write_data(self, row, column, value):
self.open()
"""写入数据"""
# 写入数据
self.sh.cell(row=row, column=column, value=value)
# 保存文件
self.wb.save(self.filename)