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

Posted 罐装七喜

tags:

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

 

 

"""


excel类,需求的实现时什么

1.读取表头
2.读取数据 --读取表头意外的所有数据 --返回值:列表,成员是每一行数据


初始话工作?

加载一个excel,打开已表单。

"""
import os
from openpyxl import load_workbook

file_path = os.path.join(os.path.dirname(os.path.abspath(__file__)), \'login_cases.xlsx\')


class HandleExcel:

    def __init__(self,file_path, sheet_name):
        #  1.加载excel数据文件
        self.wb = load_workbook(file_path)
        #  2.根据表单名称选择表单
        self.sh = self.wb[sheet_name]

    def __read_titles(self): # 减少其他类对其的调用
        titles = []
        for item in list(self.sh.rows)[0]:  # 遍历第一行的每一列
            titles.append(item.value)
        return titles

    def read_all_data(self):
        all_datas = []
        titles = self.__read_titles()
        for item in list(self.sh.rows)[1:]:  # 遍历数据行
            values = []
            for val in item:  # 获取每一行的值
                values.append(val.value)
            res = dict(zip(titles, values))  # title和每一行数据,打包成字典
            # res[\'check\'] = eval(res[\'check\'])  # 将check的字符串,转换成字典对象
            all_datas.append(res)
        return all_datas

    def close_file(self):
        self.wb.close()


if __name__ == \'__main__\':
    fix = HandleExcel(file_path,"login")
    cases = fix.read_all_data()
    fix.close_file()
    for case in cases:
        print(case)


 

 

 

以上是关于Python-操作excel-003(封装读取excel类的主要内容,如果未能解决你的问题,请参考以下文章

Python基础之读取基础配置模块封装

Python基础之读取基础配置模块封装

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

自己使用类封装操作redis数据库

《笨方法学Python》加分题15

python封装configparser模块获取conf.ini值