已知:
假如excel表格的第0行和第0列如下
第0行:[用例编号,模块,接口名称,优先级,标题,URI,前置条件,请求方式,请求头,请求参数,预期结果,响应预期结果,实际结果]
第0列:[‘用例编号’, ‘Login001’, ‘Login002’, ‘Login003’, ‘Login004’, ‘Login005’, ‘Login006’]
需求:
此时我们想取到Login002所在行的某几列元素,想要获取Login002的行号。
解决方案:
import xlrd
# 打开excel excelDir为xls的路径, formatting_info=True表示保留excel设置的格式
workBook = xlrd.open_workbook(excelDir, formatting_info=True)
# 用sheetName表名打开,为了可读性,不要选择下标打开
workSheet = workBook.sheet_by_name(sheetName)
# 要取Login002所在行的行号以及请求参数所在列的列号,以便于取他们交叉点的数据
data_row = 'Login002' # 取该行数据
data_col = '请求参数' # 取该列数据
# 获取行下标,这里只要获取第0列(列表),看看data_row在里面的下标位置即可获取
rowIndex = workSheet.col_values(0).index(data_row)
# 获取列下标,这里只要获取第0行(列表),看看data_col再里面的下标位置即可获取
colIndex = workSheet.row_values(0).index(data_col)
# 取(colIndex, colIndex)单元格的值
value = workSheet.cell(rowIndex, colIndex).value
print(value)