python3:操作excel文件
前提:自动化接口测试中,可以将用例放在excel中管理。结合实际情况讲解如何操作excel文件
1.安装xlrd:pip install xlrd
2.导入模块:import xlrd
3.打开Excel文件读取数据
data = xlrd.open_workbook('../dataconfig/interface.xlsx')
4.获取一个工作表(两种方式都可以)
table = data.sheets()[0] #通过索引顺序获取 table = data.sheet_by_index(0) #通过索引顺序获取
5.获取表名称
name = table.name
6.获取行数和列数
nrows = table.nrows
nclos = table.ncols
7.获取某行和某列的值
row_value= table.row_values(i)
col_value = table.col_values(i)
8.循环 行/列 的数据
for i in range(nrows): print(table.row_values(i)) for j in range(nclol): print(table.col_values(j))
9.获取单元格数据(两种方式)
cellvalue = table.cell(row,col).value cellvalue = table.cell_value(row,col)
代码参考:将相关方法进行封装,使用过程可以直接调用
1 #coding:utf-8 2 import xlrd 3 4 class OperationExcel: 5 def __init__(self,file_name=None,sheet_id=None): 6 if file_name: 7 self.file_name = file_name 8 self.sheet_id = sheet_id 9 else: 10 self.file_name = '../dataconfig/interface.xlsx' 11 self.sheet_id = 0 12 self.data = self.get_data() 13 14 #获取sheets的内容 15 def get_data(self): 16 data = xlrd.open_workbook(self.file_name) 17 tables = data.sheets()[self.sheet_id] 18 return tables 19 20 #获取单元格的行数 21 def get_lines(self): 22 tables = self.data 23 return tables.nrows 24 25 #获取某一个单元格的内容 26 def get_cell_value(self,row,col): 27 tables = self.data 28 cell = tables.cell_value(row,col) 29 return cell 30 31 if __name__ == '__main__': 32 opexcel = OperationExcel() 33 print(opexcel.get_cell_value(1,2))