大家好,我是星源,一个正在自学Python的19岁编程小白 🤓。这是我的学习笔记系列,我会把每天学到的知识点整理出来,分享给同样在路上的小伙伴,希望能和大家一起进步 🚀。
📌 今日学习内容
👉 "今天开始学习如何用Python操作Excel电子表格"
✨ 知识点讲解
openpyxl模块:Excel操作基础
概念说明:openpyxl模块允许Python程序读取和修改Excel电子表格文件。支持.xlsx格式,适用于现代Excel版本。
代码示例:
importopenpyxl# 加载工作簿wb=openpyxl.load_workbook('example.xlsx')print(wb.sheetnames) # 输出工作表名称列表# 获取工作表sheet=wb['Sheet1']print(sheet.title) # 输出工作表标题# 获取单元格值print(sheet['A1'].value) # 通过单元格坐标获取值print(sheet.cell(row=1, column=1).value) # 通过行、列索引获取值小提示:在使用openpyxl之前,确保已安装该模块,可以通过pip install openpyxl安装。
读取Excel表格数据
概念说明:通过循环遍历工作表的行和列,可以提取电子表格中的数据。
代码示例:
importopenpyxlwb=openpyxl.load_workbook('example.xlsx')sheet=wb.active# 获取活动工作表# 遍历表格数据forrowinrange(1, sheet.max_row+1):forcolinrange(1, sheet.max_column+1):print(sheet.cell(row=row, column=col).value, end='\t')print()小提示:sheet.max_row和sheet.max_column分别返回工作表的最大行号和列号。
写入Excel表格数据
概念说明:可以向Excel工作表的单元格写入数据,并保存修改后的工作簿。
代码示例:
importopenpyxlwb=openpyxl.Workbook() # 创建新的工作簿sheet=wb.active# 写入数据sheet['A1'] ='Fruit'sheet['B1'] ='Quantity'sheet['A2'] ='Apples'sheet['B2'] =30sheet['A3'] ='Bananas'sheet['B3'] =45# 保存工作簿wb.save('fruit_inventory.xlsx')小提示:写入现有工作簿时,建议保存为新文件,避免意外覆盖原始数据。
操作Excel表格格式
概念说明:可以设置单元格的字体、对齐方式、边框等格式,美化Excel输出。
代码示例:
fromopenpyxl.stylesimportFont, Alignment, Border, Sidewb=openpyxl.Workbook()sheet=wb.active# 设置字体font=Font(name='Arial', size=14, bold=True, italic=True)sheet['A1'].font=font# 设置对齐方式alignment=Alignment(horizontal='center', vertical='center')sheet['A1'].alignment=alignment# 设置边框border=Border(left=Side(style='thin'), right=Side(style='thin'),top=Side(style='thin'), bottom=Side(style='thin'))sheet['A1'].border=borderwb.save('formatted_cell.xlsx')小提示:格式设置通常在数据写入后进行,确保最终输出的专业性和可读性。
处理大型Excel文件
概念说明:对于大型Excel文件,可以使用生成器表达式优化内存使用,避免一次性加载全部数据。
代码示例:
importopenpyxlwb=openpyxl.load_workbook('large_file.xlsx')sheet=wb.active# 使用生成器逐行处理数据forrowinsheet.iter_rows(min_row=1, max_row=1000, min_col=1, max_col=10):forcellinrow:print(cell.value, end='\t')print()小提示:iter_rows()和iter_cols()方法支持迭代大量数据,减少内存占用。
✅ 总结
Excel基础操作:使用openpyxl加载、读取和写入Excel工作簿。
数据遍历与提取:通过循环结构提取表格数据,支持批量处理。
格式设置:自定义单元格样式,包括字体、对齐方式和边框。
大型文件处理:利用生成器表达式高效处理大型Excel文件。
文件保存策略:写入操作时建议保存为新文件,防止数据丢失。
📢 互动提问
你在处理Excel文件时,遇到过哪些需要特殊格式设置的场景?是如何实现的?