Python学习笔记:读取Excel的xlrd模块
一、安装xlrd
可以使用命令行安装也可使用pycharm进行安装
表示xlrd库已经安装成功,安装成功后,我们就可以导入使用了。
二、xlrd说明
(1、单元格常用的数据类型包括
0:empty(空的)
1:string(text)
2:number
3:date
4:boolean
5:error
6:blank(空白表格)
(2、xlrd返回的类型
1、在操作行和列时,返回excel数据时,已列表格式返回数据;
2、在统计行和列时,返回数字
3、单元格的操作,会根据不同的操作,返回的类型不同
如:sheet.cell(rowx,colx)---返回单元格对象(包含数据类型和数据)
三、xlrd库的使用
1、定义使用xlrd的相关功能
# _*_ coding:utf-8 _*_ import xlrd,os #封装xlrd,fac为拼接测试用例的路径
def fcaseexcel(fac,sheetindex=0):
try:
caseurl = r"D:\shitou\pythonscript\ManageAPI\TestCase\\" + fac + ".xlsx"
assert os.path.isfile(caseurl),"文件不存在" #打开excel文件
caselist=xlrd.open_workbook(caseurl)
# 获取sheet名称
sheetname = caselist.sheet_names() # 获取sheet
casesheet = caselist.sheet_by_index(sheetindex)
return casesheet
except Exception as e:
print(str(e)) #封装xlrd中行的操作
def fcaserows(casesheet,row=-1):
try:
caserows=[]
#获取sheet的行数
rows=casesheet.nrows #获取每行的数据
if row==-1:
for crow in range(rows):
caserows.append(casesheet.row_values(crow))
else:
caserows=casesheet.row_values(row)
return caserows
except Exception as e:
raise (str(e)) def fcasecols(casesheet,col=-1):
try:
casecols=[]
#获取sheet的列数
cols=casesheet.ncols if col==-1:
#获取每列的数据
for ccol in range(cols):
casecols.append(casesheet.col_values(ccol))
else:
casecols=casesheet.col_values(col)
return casecols
except Exception as e:
raise (str(e)) def fcasecell(casesheet,row=-1,col=-1):
try:
casecell=[]
if row==-1:
if col==-1:
#获取每个单元格的数据
for crow in range(casesheet.nrows):
for ccol in range(casesheet.ncols):
casecell.append(casesheet.col_values(crow,ccol))
else:
#获取指定列的所有数据
for crow in range(casesheet.nrows):
casecell.append(casesheet.col_values(crow,col))
else:
if col==0:
#获取指定行的数据
for ccol in range(casesheet.ncols):
casecell.append(casesheet.col_values(row,ccol))
else:
#获取指定单元格的数据
casecell=casesheet.col_values(row,col)
return casecell
except Exception as e:
raise (str(e))
2、调用函数
from MySQL_Connect import DbMysql
#指定测试用例的文件名
casesheet=fcaseexcel(casename) # 获取测试用例,在casenum列
caseapi=fcasecols(casesheet,0)
wishresult=fcasecols(casesheet, 3)
case = fcasecols(casesheet, 2)
rcasename=fcasecols(casesheet,1)
3、测试用例excel文档如下:
接口 |
测试用例名称 |
测试用例 |
预期 |
登录 |
无参数 |
{} |
参数错误,请参考API接口 |
登录 |
正确name和passwd |
{"name":"admin","word":"admin123"} |
登录成功 |
Python学习笔记:读取Excel的xlrd模块的更多相关文章
- python学习笔记(26)-request模块
python学习笔记 #requests import requests #from class_005.http_resuest import HttpRequest login_url = &qu ...
- python(读取excel操作-xlrd模块)
一.安装xlrd模块 到python官网下载http://pypi.python.org/pypi/xlrd模块安装,前提是已经安装了python 环境. 或者在cmd窗口 pip install ...
- python(读取 excel 操作 xlrd 模块)
一.安装 xlrd 模块 到 python 官网下载 http://pypi.python.org/pypi/xlrd 模块安装,前提是已经安装了 python 环境. 或者在 cmd 窗口 pip ...
- 09 python学习笔记-操作excel(九)
python操作excel使用xlrd.xlwt和xlutils模块,xlrd模块是读取excel的,xlwt模块是写excel的,xlutils是用来修改excel的.这几个模块可以使用pip安装, ...
- Python学习笔记4(函数与模块)
1.Python程序的结构 Python的程序由包(package).模块(module)和函数组成. 模块是处理一类问题的集合,由函数和类组成. 包是由一系列模块组成的集合.包是一个完成特定任务的工 ...
- python学习笔记:第八天(模块)
Python3 模块 脚本上是用 python 解释器来编程,如果从 Python 解释器退出再进入,那么定义的所有的方法和变量就都消失了. 为此 Python 提供了一个办法,把这些定义存放在文件中 ...
- python学习笔记(基础四:模块初识、pyc和PyCodeObject是什么)
一.模块初识(一) 模块,也叫库.库有标准库第三方库. 注意事项:文件名不能和导入的模块名相同 1. sys模块 import sys print(sys.path) #打印环境变量 print(sy ...
- python学习笔记(excel+requests)
已经可以对excel简单的操作后 可以开始通过excel写测试用例 读取用例 执行用例 提前写好execl 如图: 下面是代码: #!/usr/bin/env python # -*- coding: ...
- python学习笔记(excel简单操作)
现在的目标是设计一个接口自动化测试框架 用例写在excel里面 利用python自带的pyunit构建 之前已经安装好了处理excel的模块 这次简单的使用下 提前创建好excel文件 “testca ...
随机推荐
- ubuntu下python3.6.5import tensorflow显示非法指令(核心已转储)
1.版本 ubuntu版本为14.04 python为3.6.5 tensorflow为pip3安装的1.8.0版本 2.解决 删除原先的tensorflow:sudo pip3 uninstall ...
- TCP/IP——内网IP
版权声明:本文系博主原创文章,转载或引用请注明出处. 1)背景 REC 1918留出了3块IP地址空间(1个A类地址段,16个B类地址段,256个C类地址段)作为私有的内部使用的地址. 在这个范围内的 ...
- Linux配置python环境1,pyenv
安装pyenv sudo apt-get install curl git curl -L https://github.com/pyenv/pyenv-installer/raw/master/bi ...
- Hadoop-No.11之元数据
元数据的重要性 三个重要理由,让我们不得不在意元数据 元数据允许用户通过一张表的高一级逻辑抽象,而不是HDFS中文件的简单几何,或者HBase中的表来与数据交互.这意味着用户不比关心数据是如何存储的, ...
- C# 反射简单介绍
原文:https://blog.csdn.net/wu1020300665/article/details/82958455 1.什么是反射 反射是.NET中的重要机制,通过反射,可以在运行时获得程序 ...
- 关于 keepalived+lvs 中参数 persistence_timeout 的说明
在keepalived+lvs的配置文件keepalived.conf中有一个选项persistence_timeout 该选项的作用:在一定时间内使来自于同一个Client的所有TCP请求被负载到同 ...
- Python—数据类型之列表(List)
列表的切片 语法:列表[:].列表[::] 综合:列表[(开始索引b):(结束索引e)(:(步长s))] 返回:列表的切片取值时,返回一个列表,规则等同于字符串切片规则. 说明: 开始索 ...
- [人物存档]【AI少女】【捏脸数据】活泼少女
AISChaF_20191028022750507.png
- JavaScript 小技巧整理
1.过滤唯一值 Set类型是在ES6中新增的,它类似于数组,但是成员的值都是唯一的,没有重复的值.结合扩展运算符(...)我们可以创建一个新的数组,达到过滤原数组重复值的功能. const array ...
- Java集合框架系列大纲
###Java集合框架之简述 Java集合框架之Collection Java集合框架之Iterator Java集合框架之HashSet Java集合框架之TreeSet Java集合框架之Link ...