接口测试框架——第二篇-python读取excel文件内容

时间:2024-05-13 14:03:32

今天完善excel_module.py文件,上代码:


# coding: utf-8 import xlrd class ReadExcel(): def __init__(self, file_name):
self.data = xlrd.open_workbook(file_name) def close(self):
self.data.close() def get_sheet_by_index(self, index):
'''
通过表的索引获取表格的内容
:param index: sheet的索引
:return: 返回sheet的内容
'''
__sheet = self.data.sheet_by_index(index)
return __sheet def get_sheet_by_name(self, name): '''
通过sheet名称获取表的内容
:param name: sheet名称
:return: 返回sheet对象
''' __sheet = self.get_sheet_by_name(name)
return __sheet def get_row_values(self, sheet_obj, row_index):
"""
获取指定行的内容
:param sheet_obj: 接收sheet对象
:param row_index: 行的索引
:return: 返回指定行的内容,类型为列表
"""
__values_list = sheet_obj.row_values(row_index)
return __values_list def get_col_values(self, sheet_obj, col_index):
"""
获取指定列的内容
:param sheet_obj: 接收sheet对象
:param col_index: 列的索引
:return: 返回指定列的内容,类型为列表
"""
__values_list = sheet_obj.col_values(col_index)
return __values_list def get_number_of_rows(self, sheet_obj):
"""
获取指定sheet行数
:param sheet_obj: 接收sheet对象
:return: 返回sheet总行数
"""
__number_of_rows = sheet_obj.nrows
return __number_of_rows def get_number_of_cols(self, sheet_obj):
"""
获取指定sheet列数
:param sheet_obj: 接收sheet对象
:return: 返回sheet总列数
"""
__number_of_cols = sheet_obj.ncols
return __number_of_cols def get_cell_value(self, sheet_obj, row_index, col_index):
"""
获取指定单元格的内容
:param sheet_obj: 接收sheet对象
:param row_index: 行索引
:param col_index: 列索引
:return: 返回单元格的内容
"""
__cell_value = sheet_obj.cell(row_index, col_index).value
return __cell_value def get_all_content(self, sheet_obj):
""" :param sheet_obj:
:return:
"""
__content = []
# 总行数
__rows_num = self.get_number_of_rows(sheet_obj)
for tmp in range(__rows_num):
tmp_list = []
# 遍历行内容
__row_value = self.get_row_values(sheet_obj, tmp)
for i in __row_value: i = i.encode('utf8')
# 将每行内容放到一个列表里
tmp_list.append(i)
__content.append(tmp_list)
return __content

把读excel方法的单个方法提取出来,为的是后面调用的时候方便——面向对象的思想。具体方法的说明已经写的很清楚了。

如果你看不明白,那你就需要复习前面的内容了,

接口测试基础——第5篇xlrd模块   参考这一篇。

如果还是不明白,那就多百度吧,代码就是这么膈应人,慢慢来。如果有问题可以给我留言或者发公众号消息,船长看到后会第一时间回复大家。

微信公众号搜索“自动化测试实战”或扫描下方二维码添加关注~~~

接口测试框架——第二篇-python读取excel文件内容