# 导入所需的库
import pandas as pd # 用于数据处理
from openpyxl import Workbook # 用于创建 Excel 工作簿
from openpyxl.utils.dataframe import dataframe_to_rows # 用于将 DataFrame 转换为行数据
# 创建一个示例 DataFrame
data = {
'姓名': ['张三', '李四', '王五'],
'年龄': [28, 34, 29],
'城市': ['北京', '上海', '广州']
}
df = pd.DataFrame(data)
# 创建一个新的 Excel 工作簿
wb = Workbook()
ws = wb.active
# 将 DataFrame 转换为行数据并写入工作表
for r_idx, row in enumerate(dataframe_to_rows(df, index=False, header=True), 1):
for c_idx, value in enumerate(row, 1):
ws.cell(row=r_idx, column=c_idx, value=value)
# 保存工作簿到文件
wb.save('example.xlsx')
代码详解:
-
导入所需的库:
pandas
: 一个强大的数据处理库,用于创建和操作数据框(DataFrame)。openpyxl
: 一个用于读写 Excel 文件的库。dataframe_to_rows
: 从openpyxl.utils.dataframe
模块中导入,用于将 DataFrame 转换为行数据。
-
创建一个示例 DataFrame:
- 我们使用字典来创建一个包含姓名、年龄和城市的示例数据集,并将其转换为 Pandas DataFrame。
-
创建一个新的 Excel 工作簿:
- 使用
Workbook
类创建一个新的 Excel 工作簿,并获取活动的工作表。
- 使用
-
将 DataFrame 转换为行数据并写入工作表:
- 使用
dataframe_to_rows
函数将 DataFrame 转换为行数据。 - 遍历每一行和每一个单元格,将其值写入工作表中。
- 使用
-
保存工作簿到文件:
- 使用
wb.save('example.xlsx')
方法将工作簿保存为名为example.xlsx
的文件。
- 使用
这段代码展示了如何使用 Python 中的 Pandas 和 OpenPyXL 库来创建和导出一个简单的 Excel 报表。希望这能帮助您理解如何实现这一功能。