0
点赞
收藏
分享

微信扫一扫

线性编程13--读取Excel文件

读Excel文件

安装pandas
pip install pandas;
导入pandas
import pandas
读文件
xlsfile=pandas.read_excel('文件名', sheet_name, usecols)
# sheet_name=0指定读取第1张sheet表,可省,默认读取第1个sheet表
# usecols指定要读取的列名,写法如['列名',...],可省,默认所有列
data=xlsfile.values.tolist()
# xlsfile的数据类型是DataFrame字典格式,一般不方便使用,通常转型为列表
# data是二维列表,data[i]表示数据的第i行,data[i][j]表示数据的第i行第j列
# 数据的默认类型为字符串和数值型
a)excel文件读取步骤讲解:
import pandas
excelfile = pandas.read_excel('excel文件名')
data = excelfile.values.tolist()#将数据转为列表形式
for line in data: # 为行
for col in line:# 列
print(col,end=' ')#col 表示一个单元格数据
print()
也可以写成:
for line in data:
print(line[0],line[1])

查看Excel文件内容

"""
目的:使用Excel存储数据,使用代码查看文件内容与数据类型
创建:test01.xlsx
内容如下:
uname upass
zhsan 123
lisi 4567
"""
import pandas
# 将数据读取后存入列表
excelfile = pandas.read_excel('test01.xlsx')
# 读取到二位列表中 --- 两行 两列
data = excelfile.values.tolist()
print(data)# 结果不包含列名
for line in data :#行
# for col in line:
# print(col,end=' ')#end = '' 空格结尾
# print()
print(line[0],line[1])

读取登录接口的测试用例

"""
读取登录接口的测试用例,编码查看所有列的数据与类型
测试用例如下
case_name data expect
成功登录 {'username':'test01','password':'123456'} 登录成功
用户名或密码为空 {'username':'test01','password':''} 用户名或密码为空
用户名或密码为空 {'username':'','password':'123456'} 用户名或密码为空
用户名或密码为空 {'username':'','password':''} 用户名或密码为空
用户名或密码错误 {'username':'test001','password':'123456'} 用户名或密码错误
用户名或密码错误 {'username':'test01','password':'123'} 用户名或密码错误
"""
import pandas
excelfile = pandas.read_excel('login.xlsx')
data = excelfile.values.tolist()
for row in data:#excel 只认识字符串和数字类型
print(row[0],row[1],row[2],type(row[1]))

读取excel,指定列名

pandas.read_excel('excel文件名',usecols=['列名1',['列名2']....])

读取注册接口的测试用例,编码查看case_name、data、expect_db_rows列的数据与类型
测试用例如下:

case_name

data

expect

expect_sql

expect_db_rows

软件注册成功

{'username':'test02','password':'123456','confirm':'123456','name':'测试02'}

{'Status': 1000, 'Result': 'Success', 'Message': '注册成功'}

select count(*) from user where username='test02'

1

测试用户名被占用

{'username':'test03','password':'123456','confirm':'123456','name':'测试03'}

{'Status': 1003, 'Result': 'Username test03 is taken', 'Message': '用户名已被占用'}

select count(*) from user where username='test03'

1

测试两个密码不一致

{'username':'test04','password':'123456','confirm':'1234','name':'测试04'}

{'Status': 1002, 'Result': 'Password Not Compare', 'Message': '两次输入密码的不一致'}

select count(*) from user where username='test04'

0

测试用户名为空

{'username':'','password':'123456','confirm':'123456','name':'测试07'}

{'Status': 1001, 'Result': 'Input Incomplete', 'Message': '输入信息不完整'}

select count(*) from user where username=''

0

测试密码为空

{'username':'test05','password':'','confirm':'123456','name':'测试05'}

{'Status': 1001, 'Result': 'Input Incomplete', 'Message': '输入信息不完整'}

select count(*) from user where username='test05'

0

测试确认密码为空

{'username':'test06','password':'123456','confirm':'','name':'测试06'}

{'Status': 1001, 'Result': 'Input Incomplete', 'Message': '输入信息不完整'}

select count(*) from user where username='test06'

0

测试用户名密码确认密码均为空

{'username':'','password':'','confirm':'','name':''}

{'Status': 1001, 'Result': 'Input Incomplete', 'Message': '输入信息不完整'}

select count(*) from user where username=''

0

import pandas
excel = pandas.read_excel('signup.xlsx',usecols=['case_name','data','expect_db_rows'])#columns:列
data = excel.values.tolist()
for row in data:
print(data[0],data[1],data[2],type(data[0]),type(data[1]),type(data[2]))


举报

相关推荐

0 条评论