python使用第三方库openpyxl读excel封装思路(openpyxl只支持操作xlsx格式表格)

本文介绍了如何使用Python的openpyxl库进行Excel文件的高效操作,包括安装、打开、读写单元格、获取表头和数据读取等,并提供了完整封装的代码示例。

python使用第三方库openpyxl读excel封装思路(openpyxl只支持操作xlsx格式表格)
1、安装第三方库 pip install openpyxl
2、excel操作步骤:打开目标excel表格,定位到sheet里面,操作单元格内容,读取数据可不用保存关闭,写入数据一定需要保存和关闭
3、openpyxl操作:创建wb对象,获取sheet对象,找到要操作的单元格,读取,修改数据,保存关闭

完整封装代码如下:

#!/usr/bin/env python
# -*- coding:utf-8 -*-
# @Time    : 2022/6/28 9:44
# @fileName  : interface_test -> excelhandle.PY
# @Author  : ChenXiaoting

import os
import openpyxl


class ExcelHandle:
    dir_path = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
    excel_path = os.path.join(dir_path, 'testdata')

    def __init__(self, file_name):
        if not os.path.exists(self.excel_path):
            os.mkdir(self.excel_path)
        self.file = os.path.join(self.excel_path, file_name)
        print(self.file)

    def open_excel(self, sheet_name):
        wb = openpyxl.load_workbook(self.file)
        sheet = wb[sheet_name]
        return sheet

    def get_header(self, sheet_name):
        sheet = self.open_excel(sheet_name)
        headers = []
        for i in sheet[1]:
            headers.append(i)
        return headers

    def read_data(self, sheet_name):
        sheet = self.open_excel(sheet_name)
        rows = list(sheet.rows)
        headers = self.get_header(sheet_name)
        data = []
        for row in rows[1:]:
            cell_row_list = []
            for cell in row:
                cell_row_list.append(cell.value)
                data_dic = dict(zip(headers, cell_row_list))
            data.append(data_dic)
        return data


if __name__ == '__main__':
    excel = ExcelHandle('data.xlsx')
    excel.read_data('Sheet1')


评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值