python-封装方法用于读取excel

Posted 小L

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python-封装方法用于读取excel相关的知识,希望对你有一定的参考价值。

1.实现获取excel某张表的行数、单元格数据

#coding=utf-8
import xlrd
#获取excel文件
data = xlrd.open_workbook(file_path/xxx.xls)#存放excle表格的路径
#获取第一张表数据
tables = data.sheets()[0]
#打印表行数
print(tables.nrows)
#打印第4行,第3列单元格数据
print(tables.cell_value(3,2))

2.封装获取表格方法

此方法需要实现的作用是:其他方法再调用此方法时,如果传入file_name和sheet_id,就调用对应路径的excel文件和对应的表。如果不传这两个字段,就调用默认表格。

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 = file_path/xxx.xls
            self.sheet_id = 0
        self.data = self.get_data()

3.封装获取表格数据方法

封装获取tables的方法,用以之后获取单元格行数、单元格数据,或其他表信息使用。

def get_data(self):
        data = xlrd.open_workbook(self.file_name)
        tables = data.sheets()[self.sheet_id]
        return tables

4.封装获取单元格行数方法

def get_lines(self):
        tables = self.data
        return tables.nrows

5.封装获取单元格数据的方法

 def get_value(self,row,col):
        return self.data.cell_value(row,col)

6.封装获取总行数和总列数

 def get_nrown_ncols(self):
         #获取总行数
         rowNum = self.data.nrows
        #获取总列数
         colNum = self.data.ncols
         return rowNum ,colNum 

7.写入数据到excel

def write_excel(self,row,column,value_back):
        ‘‘‘
        :param row: 某一列
        :param value: 需要写入的值
        :return:
        ‘‘‘
        wb=load_workbook(self.file_name)
        sheel = wb[self.sheel_name]
        #把值写到row,column组成的单元格
        sheel.cell(row,column).value = value_back
        #保存excel
        wb.save(self.file_name)

整体代码如下:

#coding: utf-8
import xlrd

class OpeExcel:
    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 = file_path/xxx.xls
            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_value(self,row,col):
        return self.data.cell_value(row,col)

if __name__ == __main__:
     opers = OpeExcel()
     print(opers.get_lines())
     print(opers.get_value(3,2))

 

以上是关于python-封装方法用于读取excel的主要内容,如果未能解决你的问题,请参考以下文章

API接口自动化测试框架搭建-公共方法-封装读取excel用例数据方法read_excel.py

Python3 关于excel 文件格式xls之读取写入和追加

Java 读取Excel 文件存放到MySQL 数据库中,读取Excel 文件方法封装好的。用

Python-操作excel-003(封装读取excel类

干货建议收藏!!全网最完整的Python操作Excel数据封装函数

Excel JAVA 读取代码POI Excel Reader 修改补充