将Excel文件读取到pandas DataFrame中
支持从本地文件系统或URL读取xls,xlsx,xlsm,xlsb和odf文件。支持读取单个表或多个表。
io 文件路径
sheet_name 指定表名
import pandas as pd
df = pd.read_excel("data/data.xlsx", sheet_name='test')
data = []
# 将每行数据转为字典并存在data列表中
for i in df.index:
data.append(df.iloc[i].to_dict())
print(data)
# 获取第2行第2列的数据
print(df.iloc[1,2])
# 获取第2行api列对应数据
print(df.iloc[1]['api'])
print(df.loc[1]['api'])
print(df.loc[1, 'api'])
返回DataFrame,加.values返回列表
# 获取第1行数据
print(df.iloc[0])
print(df.loc[0])
# 获取多行数据
print(df.iloc[0:2])
print(df.loc[0:2])
# 获取某一列数据
print(df['api'])
# 获取多列数据
print(df.loc[:, ['api','method']])
import pandas as pd
def get_data(sheet):
# 加载sheet表单数据
df = pd.read_excel("data/data.xlsx", sheet_name=sheet)
# 提取api这个列的数据并去重
apis = list(set(df['api']))
case_data = {
}
for api in apis:
api_data = []
for i in df.index:
if df.iloc[i]['api'] == api:
# 将同一api的测试数据以字典格式存入列表
api_data.append(df.iloc[i].to_dict())
# 将api和对应的数据列表存入字典
case_data[api] = api_data
return case_data
调用get_data()函数
data = get_data('user')
# 根据api键获取对应的测试数据
print(data['adduser'])
print(data['deluser'])