【python】-【操作excel】

安装pandas

在命令行/终端执行:pip install pandas

使用

import pandas as pd

# 显示所有的列
pd.set_option('display.max_columns',None)
# 显示所有的行
pd.set_option('display.max_rows',None)

# 获取excel中的数据
sheet1_data = pd.read_excel("../test.xlsx")# 相对路径,默认只会获取第一个sheet页
sheet2_data = pd.read_excel("../test.xlsx",sheet_name="sheet2")# 获取test.xlsx的第二个sheet页,sheet_name的值是你想获取的sheet页的名字

print(type(sheet1_data))# <class 'pandas.core.frame.DataFrame'>

# 单独访问一列的数据
print("*"*10 + "访问1列数据" +"*"*10)
print(sheet1_data['编号'])# 编号是第一列的列名
print(type(sheet1_data['编号']))# <class 'pandas.core.series.Series'>
print("*"*10 + "访问2列数据" +"*"*10)
print(sheet1_data[["编号","标题"]])# 标题是第二列的列名
print("*"*10 + "访问列数据后再访问行的数据" +"*"*10)
print(sheet1_data['编号'][0])
print(sheet1_data[["编号","标题"]][1:4])# 访问编号、标题这两列的1-4行[0,3)
print("*"*10 + "单独访问行的数据" +"*"*10)
print(sheet1_data.iloc[[1]])
print(sheet1_data.iloc[[1,2,3],[1,2]])# 访问第1、2、3行的第1、2列(从0开始计数)
print(sheet1_data.iloc[0:2,0:4])# 访问第0行到第2行(不含第2行),第0列到第4列的数据(不含第4列)

# 把所有列的值,依次取出来
# for i in sheet1_data:
#     print(i)# 列名
#     print(sheet1_data[i])

# 按照行来进行依次的数据访问
# for i in sheet1_data.index:
#     print(i)# 每行数据的索引值
#     print(sheet1_data.iloc[[i]])


# 访问excel中每一个单元格中的数据
for i in sheet1_data.index:# i是行的索引
    for j in sheet1_data.iloc[[i]]:# j是列名
        print(sheet1_data[j][i])

Excel数据的筛选访问和解析

所有数据访问出来不是json格式就是字典格式,我们如何将其解析为一个个字段?本节将做出解答

import pandas as pd

# 显示所有的列
pd.set_option('display.max_columns',None)
# 显示所有的行
pd.set_option('display.max_rows',None)

# 获取excel中的数据
sheet1_data = pd.read_excel("../第三章接口测试用例.xlsx")
# 数据的筛选访问:[]中是筛选调价,如果在[]中写了个表达式,获取的数据会执行这个表达式并返回true或者false,最终把为true的数据输出来
login_case_type = sheet1_data[sheet1_data["请求接口类别"]=="登录"]# sheet1_data["请求接口类别"]:获取“请求接口类别”这一列的数据
print(login_case_type)

# json(字典)数据解析
login_case_data = login_case_type['输入数据'][0]# 获取“输入数据”那一列的第0行
print(login_case_data)
# print(login_case_data["userName"])
print(type(login_case_data))# <class 'str'>

import json
login_case_data_dict = json.loads(login_case_data)# 字符串转为dict类型
print(login_case_data_dict)
print(type(login_case_data_dict))# <class 'dict'>
username = login_case_data_dict['userName']
password = login_case_data_dict['password']
print(username)
print(password)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值