接口测试框架——第二篇-python读取excel文件内容
今天完善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文件内容的更多相关文章
- 记录:python读取excel文件
由于最近老是用到python读取excel文件,所以特意记录一下python读取excel文件的大体框架. 库:xlrd(读),直接pip安装即可.想要写excel文件的话,安装xlwd库即可,也是直 ...
- PHP读取Excel文件内容
PHP读取Excel文件内容 项目需要读取Excel的内容,从百度搜索了下,主要有两个选择,第一个是PHPExcelReader,另外一个是PHPExcel. PHPExcelReader比较 ...
- 使用POI读取excel文件内容
1.前言 项目中要求读取excel文件内容,并将其转化为xml格式.常见读取excel文档一般使用POI和JExcelAPI这两个工具.这里我们介绍使用POI实现读取excel文档. 2.代码实例: ...
- 基于Java+Selenium的WebUI自动化测试框架(十一)-----读取Excel文件(POI)(1)
上一篇说了利用JXL的jar包来读取Excel的代码.在Java中,还可以用另外一种jar包来读取Excel的内容,那就是Apache的POI. 这里和之前一样,需要导入POI的jar包,建议导入这三 ...
- 基于Java+Selenium的WebUI自动化测试框架(十)-----读取Excel文件(JXL)
之前,我们使用了读取XML文件的方式来实现页面元素的读取,并做成了基础页面类.下面,我们来进行一些扩展,通过Excel来读取页面元素. Excel的使用,大多数人应该都不陌生.那么Java读取Exce ...
- (实用篇)PHPExcel读取Excel文件的实现代码
用PHPExcel读取Excel 2007 或者Excel2003文件,需要的朋友,可以参考下. 涉及知识点: php对excel文件进行循环读取 php对字符进行ascii编码转化,将字符转为十进 ...
- 第一节:python读取excel文件
写在前面: (1)Excel中数字格式int(1),读出的是float(1.0)类型,导致传参时造成不同,强制转换时,int(str(1.0))在2.7版本又会报错ValueError: invali ...
- 关于jquery js读取excel文件内容 xls xlsx格式 纯前端
附带参考:http://blog.csdn.net/gongzhongnian/article/details/76438555 更详细导入导出:https://www.jianshu.com/p/7 ...
- java实现读取excel文件内容
package excel; import java.io.FileInputStream; import java.io.InputStream; import java.text.SimpleDa ...
随机推荐
- 教你如何使用理解懒Redis是更好的Redis
前言 大家都知道 Redis 是单线程的.真正的内行会告诉你,实际上 Redis 并不是完全单线程,因为在执行磁盘上的特定慢操作时会有多线程.目前为止多线程操作绝大部分集中在 I/O 上以至于在不同线 ...
- web项目整合Shiro框架
1.修改pom.xml文件 <dependency> <groupId>org.apache.shiro</groupId> <artifactId>s ...
- 20165332实验四 Android开发基础
20165332 实验四 Android程序设计 一.实验报告封面 课程:Java程序设计 班级:1653班 姓名:延亿卓 学号:20165332 指导教师:娄嘉鹏 实验日期:2018年5月14日 实 ...
- 005-对象——对象的 final const
<?php /** * */ /*class shouji { public $pinpai; final function chongdian() { //final 最终的 return $ ...
- php中mysql_fetch_row() 和mysql_fetch_array之间有什么区别
mysql_fetch_row是从结果集取出1行数组,作为枚举 mysql_fetch_array是从结果集取出一行数组作为关联数组,或数字数组,两者兼得eg:$sql="select ab ...
- HDU 4704 Sum (隔板原理 + 费马小定理)
Sum Time Limit : 2000/1000ms (Java/Other) Memory Limit : 131072/131072K (Java/Other) Total Submiss ...
- *SCM-MANAGERtomcat寄宿使用
采用的部署方式 TomCat 一个端口下部署多个 Application供不同部门使用 初始部署详参见 SCM-MANAGER 博文 日常使用添加部门操作步骤 从“D:\tomcat\webapps” ...
- 一月收集几个有用的谷歌Chrome插件
谷歌Chrome自推出以来已经从一个简单的浏览器演变成一个复杂的浏览器,这得益于根据浏览器写出的非常有用和强大的扩展.作为一名开发人员,我们关注的是网页设计和开发部分的那些插件对我们有帮助,几个比较熟 ...
- 数据库连接错误:CannotAcquireResourceException: A ResourcePool could not acquire a resource from its primary factory or source.
学习Spring整合Hibernate的知识,新建一个工程,代码结构如下: 按如下步骤整合: 代码如下: hibernate.cfg.xml: <?xml version="1.0&q ...
- Windows 64位系统下安装JAVA环境
文件名称:jdk-7u51-windows-x64 下载Windows 64位平台的JDK安装文件. 安装 1.双击打开下载好的文件,点击“下一步”开始安装. 2. ①默认选择安装全部功能,不做调整. ...