今天完善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文件内容的更多相关文章

  1. 记录:python读取excel文件

    由于最近老是用到python读取excel文件,所以特意记录一下python读取excel文件的大体框架. 库:xlrd(读),直接pip安装即可.想要写excel文件的话,安装xlwd库即可,也是直 ...

  2. PHP读取Excel文件内容

    PHP读取Excel文件内容   项目需要读取Excel的内容,从百度搜索了下,主要有两个选择,第一个是PHPExcelReader,另外一个是PHPExcel.   PHPExcelReader比较 ...

  3. 使用POI读取excel文件内容

    1.前言 项目中要求读取excel文件内容,并将其转化为xml格式.常见读取excel文档一般使用POI和JExcelAPI这两个工具.这里我们介绍使用POI实现读取excel文档. 2.代码实例: ...

  4. 基于Java+Selenium的WebUI自动化测试框架(十一)-----读取Excel文件(POI)(1)

    上一篇说了利用JXL的jar包来读取Excel的代码.在Java中,还可以用另外一种jar包来读取Excel的内容,那就是Apache的POI. 这里和之前一样,需要导入POI的jar包,建议导入这三 ...

  5. 基于Java+Selenium的WebUI自动化测试框架(十)-----读取Excel文件(JXL)

    之前,我们使用了读取XML文件的方式来实现页面元素的读取,并做成了基础页面类.下面,我们来进行一些扩展,通过Excel来读取页面元素. Excel的使用,大多数人应该都不陌生.那么Java读取Exce ...

  6. (实用篇)PHPExcel读取Excel文件的实现代码

    用PHPExcel读取Excel 2007 或者Excel2003文件,需要的朋友,可以参考下. 涉及知识点:  php对excel文件进行循环读取 php对字符进行ascii编码转化,将字符转为十进 ...

  7. 第一节:python读取excel文件

    写在前面: (1)Excel中数字格式int(1),读出的是float(1.0)类型,导致传参时造成不同,强制转换时,int(str(1.0))在2.7版本又会报错ValueError: invali ...

  8. 关于jquery js读取excel文件内容 xls xlsx格式 纯前端

    附带参考:http://blog.csdn.net/gongzhongnian/article/details/76438555 更详细导入导出:https://www.jianshu.com/p/7 ...

  9. java实现读取excel文件内容

    package excel; import java.io.FileInputStream; import java.io.InputStream; import java.text.SimpleDa ...

随机推荐

  1. HTop 防止进程重复显示

    按F2 选择 Display options 选择 Hide userland threads 比Top更加好用!

  2. Centos7 安装Power Shell

    Centos7 安装Power Shell 1 查看版本 # cat /etc/redhat-release CentOS Linux release 7.5.1804 (Core) 2 安装 # R ...

  3. Android-----代码实现打开手机第三方应用APP

    最近做一个项目,有一个需要启动第三方应用,和微信的地图查看差不多,需要启动高德,百度或腾讯地图来查看:特来分享,希望有所帮助. 案例效果如图: 要想启动第三方:首先要知道他的包名 一:高德 高德:co ...

  4. Python 排序---sort与sorted学习

    当我们从数据库中获取一写数据后,一般对于列表的排序是经常会遇到的问题,今天总结一下python对于列表list排序的常用方法: 第一种:内建方法sort() 可以直接对列表进行排序 用法: list. ...

  5. 虚拟机VMware搭建代码环境

    安装git yum install git -y 安装nvm curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.29.0/ins ...

  6. MySQL的登陆错误:ERROR 1049 (42000): Unknown database 'root'

    当初刚装MySQL的时候,到网上查的命令行登陆MySQL的方法都是mysql -u root -p password mysql -r root -p 123456 但是奇怪的是这条命令我输进去死活都 ...

  7. hdu4678 Mine 规律或者博弈。(博弈的sg函数不懂我是找的规律)

    链接:题意就是告诉你一个扫雷图里面每个雷的位置,有两个人,每个人都知道雷的确切位置,每个人一次可以点一部,问你谁能赢. 链接:http://acm.hdu.edu.cn/showproblem.php ...

  8. List根据某个字段(属性)去重

    有时候自带的list.Distinct()去重并不能满足魔门的要求,比如以下情况 如果testList的Name相同则视为重复,则可以如下实现,比写循环语句简洁多了 testList.Where((x ...

  9. 使用Eclipse EE(汉化版) 创建一个JavaWeb工程

    第一步:打开eclipse ee,单击“文件”-->单击“新建”-->单击“动态Web项目”. 若没找到“动态Web项目”,单击“其他” -->在弹出的窗口中打开“Web”下拉菜单 ...

  10. Asp.net Core + EF Core + Bootstrap搭建的MVC后台通用管理系统模板(跨平台版本)

    Asp.net Core + EF Core + Bootstrap搭建的MVC后台通用管理系统模板(跨平台版本) 原创 2016年07月22日 10:33:51 23125 6月随着.NET COR ...