zoukankan      html  css  js  c++  java
  • Python+Unittest接口自动化测试(四)--使用Python操作Excel

    一、xlrd模块初体验

    1. xlrd的一些基本用法

    # coding:utf-8
    import xlrd   #导入xlrd库
    
    file = 'G:ImoocInterfaceexcelinterface_test.xlsx'   #excel文件地址
    data = xlrd.open_workbook(file)   #打开interface_test.xlsx文件
    
    shuliang = data.nsheets   #获取sheet数量
    print(shuliang)
    
    sheet_names = data.sheet_names()   #获取sheet名称
    print(sheet_names)
    print(sheet_names[0])  #获取第一个sheet标签的名字
    
    sheet1 = data.sheet_by_index(0)     #根据sheet索引获取内容
    sheet2 = data.sheet_by_name('Sheet2')    #根据sheet名称获取内容
    sheet3 = data.sheet_by_name('Sheet4')
    print(sheet1)
    print(sheet2)
    print(sheet3)
    
    #获取该sheet的总行数
    rows = sheet1.nrows
    print(rows)
    
    #获取该sheet的总列数
    cols = sheet1.ncols
    print(cols)
    
    row_data_1 = sheet1.row_values(0)   #获取第一行内容
    row_data_2 = sheet2.row_values(1)
    cor_data_1 = sheet1.col_values(0)   #获取第一列内容
    print(row_data_1)
    print(row_data_2)
    print(cor_data_1)
    
    #从第二行开始,遍历每一行的内容
    for t in range(1, rows):
        row_value = sheet1.row_values(t)
        print(row_value)
    
    cell_value1 = sheet1.cell_value(0, 0)   #获取第一行,第一列数据。索引从0开始
    cell_value2 = sheet1.cell_value(2, 3)   #获取第二行,第四列数据
    print(cell_value1)
    print(cell_value2)

    附Excel文件截图:

     

     

    运行结果:

    二、把操作Excel的模块封装成函数

    1. 整理之前写的程序片段,封装成函数

    # coding:utf-8
    import xlrd   #导入xlrd库
    
    # data = xlrd.open_workbook('G:ImoocInterfaceexcelinterface_test.xlsx')
    # tables = data.sheets()[0]
    # print(tables.nrows)
    # print(tables.cell_value(2,3))
    
    class OperationExcel:
        def __init__(self, file_name=None, sheet_id=None):
            if file_name:
                self.file_name = file_name
                self.sheet_id = sheet_id
            else:
                self.file_name = 'G:ImoocInterfaceexcelinterface_test.xlsx'
                self.sheet_id = 0
                self.data = self.get_data()
    
        #获取sheets的内容
        def get_data(self):
            data = xlrd.open_workbook(self.file_name)
            tables = data.sheets()[self.sheet_id]
            return tables
    
        #获取单元格的行数
        def get_lines(self):
            tables = self.data
            return tables.nrows
    
        #获取某一个单元格的内容
        def get_cell_value(self, row, col):
            return  self.data.cell_value(row, col)
    
    if __name__ == '__main__':
        opers = OperationExcel()
        print(opers.get_data().nrows)
        print(opers.get_lines())
        print(opers.get_cell_value(1, 2))

    附Excel表格截图:

    运行结果:

    IN A WORLD LIKE THIS 萬物之中,希望至美;至美之物,永不凋零
  • 相关阅读:
    BZOJ3197:[SDOI2013]刺客信条——题解
    C 程序与 C++ 程序之间的相互调用
    使用Dev C++调试(debug)程序
    ARM 汇编指令 ADR 与 LDR 使用
    华为交换机以 LACP 模式实现链路聚合
    DLCI 简介
    华为路由器帧中继 FR 实验
    GVRP 的工作机制和工作模式
    华为路由器 HDLC 实验
    华为路由器 IPSec 与 GRE 结合实验
  • 原文地址:https://www.cnblogs.com/littlemonsterksn/p/14385465.html
Copyright © 2011-2022 走看看