Python库openpyxl
是一个用于读取和写入Excel 2010 xlsx/xlsm/xltx/xltm文件的库。它允许你在程序中操作Excel工作簿,包括创建新的工作簿、打开现有工作簿、添加或删除工作表、修改单元格内容以及进行其他更复杂的操作。
以下是一些使用openpyxl
的基本操作:
安装
首先,你需要通过pip安装openpyxl
库:
pip install openpyxl
基本用法
打开一个现有的Excel文件
from openpyxl import load_workbook
# 加载指定路径下的 Excel 文件
wb = load_workbook(filename='example.xlsx')
# 获取所有的工作表名称
print(wb.sheetnames)
# 获取第一个工作表(索引为0)
sheet = wb['Sheet1']
# 获取单元格内容
cell_value = sheet['A1'].value
print(cell_value)
创建一个新的Excel文件并写入数据
from openpyxl import Workbook
# 创建一个新的工作簿对象
wb = Workbook()
# 获取活动工作表(默认是第一个工作表)
ws = wb.active
# 将值写入到特定单元格
ws['A1'] = 'Hello, World!'
# 保存工作簿到指定路径
wb.save('new_file.xlsx')
操作行和列
# 获取行的所有单元格
row_cells = ws[row_number]
# 获取列的所有单元格
column_cells = [c for c in ws.iter_cols(min_col=col_num, max_col=col_num)]
# 遍历行和列
for row in ws.iter_rows():
for cell in row:
print(cell.value)
更多高级操作
你可以使用openpyxl
执行许多其他操作,例如样式设置、合并单元格、公式计算等。查看官方文档以获取详细信息:https://openpyxl.readthedocs.io/en/stable/
示例
假设你有一个名为data.xlsx
的Excel文件,其中包含如下数据:
A | B |
---|---|
1 | 2 |
3 | 4 |
以下代码将读取该文件,并在每个单元格的内容后加1,然后将结果保存到新的Excel文件中:
import openpyxl
# 加载已有的Excel文件
workbook = openpyxl.load_workbook("data.xlsx")
sheet = workbook.active
# 更新单元格内容
for row in sheet.iter_rows(values_only=True):
for i, value in enumerate(row):
sheet.cell(row=row[0].row, column=i + 1).value = value + 1
# 保存更改到新文件
workbook.save("updated_data.xlsx")
这个例子展示了如何使用openpyxl
来处理简单的数据操作。对于更复杂的需求,可以查阅官方文档中的示例和API说明。