用python实现读取xlsx表格操作

 更新时间:2022年01月28日 15:51:40   作者:繁星流动 >_<  
大家好,本篇文章主要讲的是用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.nrows
print(row)
打印:8

获取sheet中有效列数:

col = table.ncols
print(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来存储测试用例。这里直接将其定义成一个装饰器吧。

import xlrd
class Readxlrd():

    def __init__(self,func):
        self.func = func

    def __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.nrows
        for i in range(row):
            if i >= 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)
                for k, v in zip(table_head, table_list):
                    combined_dict[k] = v
                if combined_dict['run'] == 'yes':
                    print(combined_dict)


@Readxlrd
def test(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读取xlsx表格内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • python机器学习基础K近邻算法详解KNN

    python机器学习基础K近邻算法详解KNN

    这篇文章主要为大家介绍了python机器学习基础K近邻算法详解有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2021-11-11
  • Python计算开方、立方、圆周率,精确到小数点后任意位的方法

    Python计算开方、立方、圆周率,精确到小数点后任意位的方法

    今天小编就为大家分享一篇Python计算开方、立方、圆周率,精确到小数点后任意位的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-07-07
  • 解决新django中的path不能使用正则表达式的问题

    解决新django中的path不能使用正则表达式的问题

    今天小编就为大家分享一篇解决新django中的path不能使用正则表达式的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-12-12
  • python中h5py开源库的使用样例详解

    python中h5py开源库的使用样例详解

    这篇文章主要介绍了python中的h5py开源库的使用,本文只是简单的对h5py库的基本创建文件,数据集和读取数据的方式进行介绍,需要的朋友可以参考下
    2022-05-05
  • Django实现微信小程序支付的示例代码

    Django实现微信小程序支付的示例代码

    这篇文章主要介绍了Django实现微信小程序支付的示例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-09-09
  • python神经网络ShuffleNetV2模型复现详解

    python神经网络ShuffleNetV2模型复现详解

    这篇文章主要为大家介绍了python神经网络ShuffleNetV2模型复现详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-05-05
  • Python实现自动生成请假条

    Python实现自动生成请假条

    这篇文章主要为大家详细介绍了如何实现用Python来批量生成请假条,这回既学了东西又做了事情,两不误!感兴趣的小伙伴可以跟随小编一起学习一下
    2022-12-12
  • Python lxml库的简单介绍及基本使用讲解

    Python lxml库的简单介绍及基本使用讲解

    lxml是XML和HTML的解析器,其主要功能是解析和提取XML和HTML中的数据,本文重点给大家介绍Python lxml库的简单介绍及基本使用讲解,感兴趣的朋友跟随小编一起看看吧
    2020-12-12
  • python爬虫实例之获取动漫截图

    python爬虫实例之获取动漫截图

    这篇文章主要给大家介绍了关于python爬虫实例之获取动漫截图的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用python具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2020-05-05
  • python format格式化和数字格式化

    python format格式化和数字格式化

    这篇文章主要介绍了python format格式化和数字格式化,格式化字符串的函数 str.format(),它增强了字符串格式化的功能,基本语法是通过{} 和 : 来代替以前的 % ,下面内容介绍,需要的朋友可以参考一下
    2022-02-02

最新评论