怎么用python实现读取xlsx表格
怎么用python实现读取xlsx表格
今天小编给大家分享一下怎么用python实现读取xlsx表格的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。
前言
快要过年了,现在是工作的事情也不想干,学习也完全学不进去,关于xlsx的操作原本昨天已经写好了,不过悲催的是,忘记发布了直接关浏览器关闭后发现已经丢失了。
以下操作均对照改表格操作:
读操作
获取sheet的方法
通过索引获取sheet表格:
table=worbook.sheets()[0]
table=worbook.sheet_by_index(0)
通过sheet名称获取:
table=worbook.sheet_by_name(sheet_name='case')
获取xlsx中所有sheet:
table=worbook.sheet_names()print(table)打印:case
获取行和列
获取sheet中有效行数:
row=table.nrowsprint(row)打印:8
获取sheet中有效列数:
col=table.ncolsprint(col)打印:10
获取一行中有多少列数据:
col=table.row_len(0)print(col)
获取指定行中的所有数据:
'''rowx表示是获取第几行的数据start_col表示从索引为多少开始,end_colx表示从索引为多少结束end_colx为None表示结束没有限制获取指定行中的数据并以列表的形式返回'''table_list=table.row_values(rowx=0,start_colx=0,end_colx=None)print(table_list)打印:['run','headers','pre_case_id','pre_fields','request_body','expect_result','assert_type','pass','update_time','response']
获取列中的数据:
'''colx表示是获取第几列的数据start_rowx表示从索引为多少开始,end_rowx表示索引为多少结束end_rowx为None表示结束没有限制获取指定列中的数据并以列表的形式返回'''table_list=table.col_values(colx=0,start_rowx=0,end_rowx=None)print(table_list)打印:['run','yes','no','yes','no','no','no','no']
获取单元格中值
获取指定单元格中的值:
table=worbook.sheet_by_name(sheet_name='case')value=table.cell_value(rowx=0,colx=1)print(value)打印:headers
下面写个例子吧,就是将所有run为yes的行打印出来,其实在日常工作中就是将run为yes的用例执行一遍啦,虽然我们并不用excel来存储测试用例。这里直接将其定义成一个装饰器吧。
importxlrdclassReadxlrd():def__init__(self,func):self.func=funcdef__call__(self,*args,**kwargs):self.func(*args)worbook=xlrd.open_workbook(filename=args[0])table=worbook.sheet_by_name(sheet_name=args[1])row=table.nrowsforiinrange(row):ifi>=1:combined_dict={}table_list=table.row_values(rowx=i,start_colx=0,end_colx=None)table_head=table.row_values(rowx=0,start_colx=0,end_colx=None)fork,vinzip(table_head,table_list):combined_dict[k]=vifcombined_dict['run']=='yes':print(combined_dict)@Readxlrddeftest(route,sheet):print('输入的路径为{},输入的sheet是{}'.format(route,sheet))打印:输入的路径为C:\Users\86182\Desktop\case.xlsx,输入的sheet是case{'run':'yes','headers':'{"Content-Type":"application/x-www-form-urlencoded"}','pre_case_id':-1.0,'pre_fields':'[]','request_body':'{"phone":"18262966312","pwd":"123456"}','expect_result':'0','assert_type':'code','pass':'True','update_time':44447.6884722222,'response':''}{'run':'yes','headers':'{"token":"token"}','pre_case_id':1.0,'pre_fields':'[{"field":"token","scope":"header"}]','request_body':'{}','expect_result':'0','assert_type':'code','pass':'True','update_time':44447.6892476852,'response':''}
以上就是“怎么用python实现读取xlsx表格”这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注恰卡编程网行业资讯频道。
推荐阅读
-
Python 3.12 新特性解析:模式匹配增强与性能优化实战
-
Lightly IDE 深度评测:轻量级 Python 开发工具是否适合团队协作?
-
VS Code 自定义配置:JSON 文件修改、代码片段与任务自动化脚本
-
Python 虚拟环境选择:venv、conda、poetry 的适用场景对比
-
PyCharm+GitHub Copilot:Python 开发中 AI 辅助编码的最佳实践
-
PyCharm 无法识别虚拟环境?5 步排查 Python 解释器配置问题
-
数据科学工具链:Jupyter Notebook+RStudio+Python 的协同工作流
-
Python 3.12 新特性:模式匹配增强与性能改进实战
-
Lightly IDE 适合谁?轻量级 Python 开发工具深度评测
-
Python IDE 终极对比:PyCharm vs VS Code vs Jupyter Notebook