- 利用openpyxl库 *** 作Excel文件的读写(仅支持xlsx文件,xls文件会报错)以下代码供参考
#! /user/bin/env python # encoding: utf-8 import openpyxl import os def edit_excel(filepath, modifys): """ 编辑Excel文件并保存,如果输入的文件路径不存在,将创建一个新文件 :param filepath: 文件路径 :param modifys: list, e.g:[{'row': 1, 'col': 1, 'value': 'value1'},{'row': 2, 'col': 2, 'value': 'value2'}] 修改参数为列表嵌套字典,提供要修改的行号、列号、修改的值等 :return: None """ if not os.path.exists(filepath): wb = openpyxl.Workbook() wb.save(filepath) wb.close() wb = openpyxl.load_workbook(filepath) sh = wb['Sheet'] for mod in modifys: sh.cell(row=mod['row'], column=mod['col'], value=mod['value']) wb.save(filepath) def read_excel(filepath, cells, sheetname='Sheet'): """ 读取Excel单元格的数据,返回数据列表 :param filepath: 文件完整路径 :param cells: 单元格参数,包括行号列号[{'row': 1, 'col': 1}, {'row': 1, 'col': 2}] :param sheetname: :return: response 返回数据列表:[{'row': 1, 'col': 1, 'value': '姓名'}, {'row': 1, 'col': 2, 'value': '年龄'}] """ if not os.path.exists(filepath): print("file not exist! please check the filepath".title()) else: wb = openpyxl.load_workbook(filepath) sh = wb[sheetname] response = [] for c in cells: value = sh.cell(row=c['row'], column=c['col']).value cell = {'row': c['row'], 'col': c['col'], 'value': value} response.append(cell) wb.close() return response
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)