python学习13:对excel格式文件进行读写操作

读取excel的话需要下载第三方库:

复制代码
常用的库:xlrd(读),xlwt(写),xlutils,openpyxl[-----pip install xxx-------]

这里推荐openpyxl

复制代码
pip install openpyxl

excel读取的基本操作

复制代码
# 2)基本操作:
# 2.1)打开文件,获取工作簿
filename = r'D:\stdutyZiLiao\pythoneProjects\webUI\逻辑流程\test005.xlsx'
book = openpyxl.load_workbook(filename)
# 2.2)获取对应文件的工作表
sheet_name = book.sheetnames # 得到列表(工作表sheet):['测试用例', 'Sheet2', 'Sheet3']
# print(sheet_name)
# down_sheet = sheet_name[0] # 得到第一个sheet:测试用例--但是这样获取到的是字符串
down_sheet = book[sheet_name[0]] # 得到工作簿中的对应的第一个sheet:测试用例
print(down_sheet)
# 2.3)获取对应单元格的数据
print(down_sheet.cell(1,2).value) # 获取第一行第二个单元格

excel案例:

复制代码
把对应的用例读取出来成为列表格式[{模块;登录接口,用例:login001...},{模块;登录接口,用例:login002...}]

我的测试用例模板:

第一行是不用的,第二行一般是作为key值,第三行起才是value的数值

复制代码
# 案例:把对应的用例读取出来成为列表格式[{模块;登录接口,用例:login001...},{模块;登录接口,用例:login002...}]
filename = r'D:\stdutyZiLiao\pythoneProjects\webUI\逻辑流程\test005.xlsx'
book = openpyxl.load_workbook(filename)
# 2.2)获取对应文件的工作表
sheet_name = book.sheetnames # 得到列表(工作表sheet):['测试用例', 'Sheet2', 'Sheet3']
down_sheet = book[sheet_name[0]] # 得到sheet
# 遍历
rows = down_sheet.max_row + 1 # 下标是从1开始的,所以需要加1
cols = down_sheet.max_column + 1 # 这个根据实际情况加/减,因为可能有不需要的列
caseDate = [] # 存放所有数据
# 因为第一行是总标题,无关数据,所以从第三行开始,最后一行结束
for i in range(3,rows):
    case = {}
    # 从第一列开始取,最后一列结束
    for j in range(1,cols):
        value = down_sheet.cell(i,j).value
        # 变量名[key] = value :key第二行的标题,value每一行的内容
        case[down_sheet.cell(2,j).value] = value
    print(case)
    caseDate.append(case)
print(caseDate,'caseDate')
相关推荐
CircleMouse1 小时前
Excel导出问题:accessExternalStylesheet
excel
专注于大数据技术栈2 小时前
java学习--枚举(Enum)
java·学习
我命由我123452 小时前
开发中的英语积累 P19:Inspect、Hint、Feedback、Direction、Compact、Vulnerability
经验分享·笔记·学习·职场和发展·求职招聘·职场发展·学习方法
qq_12498707533 小时前
基于SpringBoot学生学习历史的选课推荐系统的设计与实现(源码+论文+部署+安装)
java·spring boot·后端·学习·毕业设计·毕设
崇山峻岭之间4 小时前
C++ Prime Plus 学习笔记033
c++·笔记·学习
暗然而日章4 小时前
C++基础:Stanford CS106L学习笔记 7 类
c++·笔记·学习
思成不止于此4 小时前
【MySQL 零基础入门】DDL 核心语法全解析:数据库与表结构操作篇
数据库·笔记·学习·mysql
学编程的闹钟4 小时前
86【CSS的模块化处理】
学习
weixin_409383124 小时前
姜丹四方向a*寻路学习记录4 不用计算起点到目的地的f 从开始计算的是角色起点四周的格子到目的地的f
学习
im_AMBER4 小时前
Leetcode 72 数组列表中的最大距离
c++·笔记·学习·算法·leetcode