自动化测试需要做文件处理工作,其中Excel文件就是我们常用的文件之一,python 用于处理 excel文件的模块主要有xlrd和xlwt两个模块。其中xlrd是用来读取excel文件内容的模块。
安装模块
pip install xlrd
xlrd模块
xlrd模块是读取excel文件数据的模块,其使用方法如下:
导入模块
import xlrd
文件操作
data = xlrd.open_workbook(filename) #打开文件
sheet操作
tables = data.sheets() #获取文件中所有表内容
table = data.sheet_by_index(index) #通过索引获取表
table = data.sheet_by_name(sheet_name) #通过sheet的名称获取表
names = data.sheet_names() #返回文件中所有sheet的名字
data.sheet_loaded(sheet_name or indx) # 检查某个sheet是否导入
unload_sheet( sheet_name_or_index) #判断某个sheet是否没有导入
行操作
row_num = table.nrows #统计行数
table.row_len(rowx) #返回该行的有效单元格长度
rows = get_rows() # 逐行获取所有行内容
row = table.row_values(rowx, start_colx, end_colx):#获取某一行从起始列到结束列的内容列表,默认一整行
row = table.row(rowx) #获取某一行的内容
table.row_slice(rowx, start_colx, end_colx) #类似row_values()函数
table.row_types(rowx, start_colx, end_colx) #返回由该行中选中单元格的数据类型组成的列表
列操作
ncols = table.ncols #获取列表的有效列数
table.col(colx, start_rowx, end_rowx) #获取某一列从起始行到结束行的所有内容
table.col_slice(colx, start_rowx, end_rowx) #等同于col()函数
table.col_values(colx, start_rowx, end_rowx) #类似于col()函数
table.col_types(colx, start_rowx, end_rowx) #获取某一列从起始行到结束行的所有数据类型
单元格处理
table.cell(rowx,colx) #返回指定的单元格对象
table.cell(rowx,colx).value # 返回单元格中的数据内容
table.cell_type(rowx,colx) #返回指定单元格中的数据类型
table.cell_value(rowx,colx) #返回单元格中的数据内容
合并单元格处理
读取合并单元格,只有第一个单元格存在内容,其他的皆为空,则处理方法如下: