下面是详细讲解“Python使用openpyxl模块处理Excel文件”的完整实例教程。
什么是openpyxl
openpyxl是一个使用Python处理Excel文档的优秀模块。它可以帮助我们读取、编辑和写入Excel文件,支持Excel 2010或以上版本的xlsx/xlsm/xltx/xltm文档。
安装openpyxl模块
在开始使用openpyxl模块之前,需要先安装它。我们可以使用Python包管理器pip来安装它。
pip install openpyxl
如何使用openpyxl模块
读取Excel文件
读取Excel文件我们需要使用openpyxl中的load_workbook方法,例如下面的代码:
from openpyxl import load_workbook
# 读取文件
wb = load_workbook('example.xlsx')
# 选择当前活动的工作表
ws = wb.active
# 输出数据
for row in ws.iter_rows(min_row=1, max_col=3, max_row=5, values_only=True):
print(row)
上面的代码中,它加载工作簿并选择当前活动工作表。然后,我们使用for循环迭代每一行并打印前三列的值。通过values_only=True参数可以让for循环更高效,因为它只返回单元格的值,而不是整个行的元组。
写入Excel文件
写入Excel文件需要创建openpyxl工作簿,选择工作表并写入数据,例如下面的代码:
from openpyxl import Workbook
wb = Workbook()
ws = wb.active
# 写入数据
for row in range(1, 6):
for col in range(1, 4):
ws.cell(row, col, value=row*col)
# 保存文件
wb.save('example2.xlsx')
上面的代码中,我们使用openpyxl的Workbook方法来创建一个新的工作簿和一个默认的工作表。然后,我们使用双重for循环合成数据,并将它们写入工作表中。最后,我们将工作簿保存到磁盘中。
openpyxl高级用法
上面我们讨论了openpyxl的基础用法,下面是一些更高级的用法。
选择特定的工作表
使用Worksheet方法来选择特定的工作表,例如:
# 选择名为“Sheet1”的工作表
ws = wb['Sheet1']
复制工作表
复制工作表需要使用copy_worksheet方法,例如:
# 复制名为“Sheet1”的工作表到新的工作簿
new_wb = Workbook()
ws = wb['Sheet1']
new_ws = new_wb.copy_worksheet(ws)
# 将新的工作簿保存到磁盘
new_wb.save('example3.xlsx')
使用样式
openpyxl支持应用样式,包括颜色、对齐方式、字体、边框等,例如:
from openpyxl.styles import Font, Alignment
# 设置字体
bold_font = Font(bold=True)
# 设置对齐方式
center_alignment = Alignment(horizontal='center', vertical='center')
# 使用样式
ws['A1'].font = bold_font
ws['B1'].alignment = center_alignment
使用公式
openpyxl支持使用公式,例如:
# 设置公式
ws['C2'] = '=SUM(A2:B2)'
# 计算结果
wb.calculate()
# 获取结果
result = ws['C2'].value
以上就是Python使用openpyxl模块处理Excel文件的完整实例教程。在实际应用中,我们可以进一步结合pandas、numpy等数据分析模块,处理更加复杂的Excel表格数据。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python使用openpyxl模块处理Excel文件 - Python技术站