1.为何选择openpyxl模块
xlxd、xlwt、–只能读取,openpyxl、可以读取写入
2.安装
pip install -i https://pypi.douban.com/simple openpyxl==2.6.2
3.处理对象
openpyxl只能处理xlsx格式的excel文件,只能使用办公软件来创建xlsx格式的excel文件,不能使用pycharm来创建
excel对象 -> sheet表单对象 -> cell单元格对象 -> 行和列、值属性
如果excel文件不存在,那么会FileNotFoundError
res = load_workbook(“testcase11.xlsx”)
4.代码案例
from openpyxl import load_workbook # load_workbook,往往对已存在的excel进行读写操作 class Handle_excel: def __init__(self,filename,sheetname = None): self.filename = filename self.sheetname = sheetname def read_data(self): """ 读取表格数据 :return: """ wb = load_workbook(self.filename) if self.sheetname is None: ws = wb.active # active默认读取第一个表单 else: ws = wb[self.sheetname] # 读取指定表单 testcase_list = [] # 所有数据信息 header_list = [] # 表头信息 for row in range(1,ws.max_row+1): one_row_dict = {} # 每一行数据信息 for column in range(1,ws.max_column+1): one_cell_value = ws.cell(row,column).value # cell方法,获取单元格,返回Cell对象 if row == 1: header_list.append(one_cell_value) else: key = header_list[column-1] one_row_dict[key] = one_cell_value if row != 1: testcase_list.append(one_row_dict) return testcase_list def write_data(self, row, column, data): """ 写操作 :param row: 指定在某一行写 :param column: 指定在某一列写 :param data: 待写入的数据 :return: """ # 将数据写入到excel中,不能与读取操作公用一个Workbook对象 # 如果使用同一个Workbook对象,只能将最后一次写入成功,会出现意想不到的结果 wb = load_workbook(self.filename) if self.sheetname is None: ws = wb.active else: ws = wb[self.sheetname] # 第一种写入方式: # one_cell = ws.cell(row, column) # one_cell.value = data # 第二种写入方式: ws.cell(row, column, value=data) # c.PermissionError: [Errno 13] Permission denied: 'testcase.xlsx' # 对exel文件修改之后,要保存,一定要将excel文件关闭 wb.save(self.filename) if __name__ == "__main__": excel_name =“testcase.xlsx" sheet_name = "login" do_excel = Handle_excel(excel_name,sheet_name) print(do_excel.read_data()) #do_excel.write_data(3,4,5)
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件!
如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
无争山庄资源网 Copyright www.whwtcm.com
暂无“Python-openpyxl表格读取写入的案例详解”评论...
RTX 5090要首发 性能要翻倍!三星展示GDDR7显存
三星在GTC上展示了专为下一代游戏GPU设计的GDDR7内存。
首次推出的GDDR7内存模块密度为16GB,每个模块容量为2GB。其速度预设为32 Gbps(PAM3),但也可以降至28 Gbps,以提高产量和初始阶段的整体性能和成本效益。
据三星表示,GDDR7内存的能效将提高20%,同时工作电压仅为1.1V,低于标准的1.2V。通过采用更新的封装材料和优化的电路设计,使得在高速运行时的发热量降低,GDDR7的热阻比GDDR6降低了70%。
更新日志
2024年11月16日
2024年11月16日
- 第五街的士高《印度激情版》3CD [WAV+CUE][2.4G]
- 三国志8重制版哪个武将智力高 三国志8重制版智力武将排行一览
- 三国志8重制版哪个武将好 三国志8重制版武将排行一览
- 三国志8重制版武将图像怎么保存 三国志8重制版武将图像设置方法
- 何方.1990-我不是那种人【林杰唱片】【WAV+CUE】
- 张惠妹.1999-妹力新世纪2CD【丰华】【WAV+CUE】
- 邓丽欣.2006-FANTASY【金牌大风】【WAV+CUE】
- 饭制《黑神话》蜘蛛四妹手办
- 《燕云十六声》回应跑路:年内公测版本完成95%
- 网友发现国内版《双城之战》第二季有删减:亲亲环节没了!
- 邓丽君2024-《漫步人生路》头版限量编号MQA-UHQCD[WAV+CUE]
- SergeProkofievplaysProkofiev[Dutton][FLAC+CUE]
- 永恒英文金曲精选4《TheBestOfEverlastingFavouritesVol.4》[WAV+CUE]
- 群星《国风超有戏 第9期》[320K/MP3][13.63MB]
- 群星《国风超有戏 第9期》[FLAC/分轨][72.56MB]