在数据处理和报表生成过程中,Excel是一个经常使用的工具。Python中的openpyxl库可以让您通过编程方式读取、写入和操作Excel文件,从而实现自动化的数据处理和报表生成。本文将介绍openpyxl库的基本用法和常见操作,帮助您快速上手使用Python处理Excel文件。
-
安装openpyxl
首先,您需要安装openpyxl库。您可以使用pip来安装openpyxl:pip install openpyxl
-
创建Excel文件
您可以使用openpyxl来创建一个新的Excel文件,并添加数据和样式。from openpyxl import Workbook # 创建一个新的工作簿 wb = Workbook()# 获取默认的工作表 ws = wb.active# 添加数据到单元格 ws['A1'] = 'Hello' ws['B1'] = 'World'# 保存工作簿 wb.save('example.xlsx')
-
读取Excel文件
您也可以使用openpyxl来读取已经存在的Excel文件,并获取其中的数据。from openpyxl import load_workbook# 加载现有的工作簿 wb = load_workbook('example.xlsx')# 获取默认的工作表 ws = wb.active# 获取单元格的值 print(ws['A1'].value) # 输出: Hello print(ws['B1'].value) # 输出: World
-
处理Excel文件
openpyxl还提供了丰富的功能来处理Excel文件,例如插入行列、合并单元格、设置样式等。# 插入一行 ws.insert_rows(2)# 合并单元格 ws.merge_cells('A2:B2')# 设置单元格样式 from openpyxl.styles import Font ws['A2'].font = Font(bold=True, color="FF0000")# 保存工作簿 wb.save('example.xlsx')
-
结语
通过本文的介绍,您已经了解了openpyxl库的基本用法和常见操作。openpyxl库提供了丰富的功能,可以满足您在处理Excel文件时的各种需求。在实际应用中,您可以根据具体的需求和场景来灵活运用openpyxl库,实现自动化的Excel数据处理和报表生成。 -
个人使用习惯
# -*- coding: utf-8 -*- """ -------------------------------- release : 1.0.0 Time : 2024/3/20 13:48 Author : Ning File : open_pyxl.py Python对Excel的读写主要有xlrd、xlwt、xlutils、openpyxl、xlsxwriter几种。 -------------------------------- """ from openpyxl import Workbook, load_workbookclass xlsx_class():def get_sheet_names(self):"""获取Excel中所有sheet的名称"""file_path = '1.xlsx'xls = load_workbook(file_path)sheet_names = xls.sheetnamesprint(sheet_names)# 加载现有的工作簿def read_xlsx(self):wb = load_workbook('/Users/***/Downloads/autohome.xlsx')"""('配置项', '参数名', '参数名id', '参数对应的值')('基本参数', '级别', 53, '紧凑型SUV')('基本参数', '级别', 53, '中型SUV')('基本参数', '级别', 53, '紧凑型车')"""# 获取默认的工作表# ws = wb.active# 指定工作表ws = wb.get_sheet_by_name('车型库最新的配置参数')# iter_rows(values_only=True) 方法用于遍历工作表的每一行,并返回每行的数据# values_only=True 表示只返回单元格的值,而不包括样式等其他信息。for row in ws.iter_rows(values_only=True, max_row=100):print(row) # ('配置项', '参数名', '参数名id', '参数对应的值')# 获取指定单元格的值print(ws['A1'].value) # 输出: 配置项print(ws['B1'].value) # 输出: 参数名def jiemi(self):"""受保护的工作簿 - 解密"""import msoffcryptofile = msoffcrypto.OfficeFile(open('encrypted.xls', 'rb')) # 读取原文件file.load_key(password='VelvetSweatshop') # 填入设置保护时设置的密码, 默认密码为 'VelvetSweatshop'file.decrypt(open('decrypted.xls', 'wb')) # 解密后保存为新文件, 新文件无保护,可直接使用 xlrd 读取内容def xlsx_save(self):"""xlsx文件存储"""suoyin_path = r'test.xlsx'data = [["2021"], ["2020"]]wb = Workbook()ws1 = wb.activews1.title = '新增'ws2 = wb.create_sheet(title='索引')ws3 = wb.create_sheet(title='汇总')# 写入对应的Sheet表头ws1.append(["年份1"])ws2.append(["年份2"])ws3.append(["年份3"])for a in data:ws1.append(a) # 循环写入对应的Sheet表数据ws2.append(a) # 循环写入对应的Sheet表数据ws3.append(a) # 循环写入对应的Sheet表数据wb.save(suoyin_path) # 最后储存print(f"Excel 数据插入成功")if __name__ == "__main__":xlsx_class().xlsx_save()
最后这里免费分享给大家一份Python全台学习资料,包含视频、源码。课件,希望能帮到那些不满现状,想提升自己却又没有方向的朋友,也可以和我一起来学习交流呀。
编程资料、学习路线图、源代码、软件安装包【点击这里】领取!
① Python所有方向的学习路线图
,清楚各个方向要学什么东西
② 100多节Python课程视频
,涵盖必备基础、爬虫和数据分析
③ 100多个Python实战案例
,学习不再是只会理论
④ 华为出品独家Python漫画教程
,手机也能学习
⑤ 历年互联网企业Python面试真题
,复习时非常方便