使用 openpyxl 创建多表单 Excel 文件

在数据科学和日常工作中,Excel 文件是存储和处理数据的常用格式。Python 为我们提供了多种库来操作 Excel 文件,其中 openpyxl 是一个功能强大的库,能够方便地创建、修改和读取 Excel 文件。本文将详细介绍如何使用 openpyxl 创建带有多个工作表(sheet)的 Excel 文件,包括代码示例和状态图的直观展示。

什么是 openpyxl?

openpyxl 是一个用于读取和写入 Excel 2010 xlsx/xlsm/xltx/xltm 文件的库。它可以很好地操作 Excel 文件的各种特性,如样式、公式和图表等。我们可以使用 openpyxl 来创建新的 Excel 文件,指定文件的名称、添加多个工作表等。

创建 Excel 文件和多个工作表

首先,确保你已经安装了 openpyxl。可以使用以下命令进行安装:

pip install openpyxl

下面是一个创建带有多个工作表的 Excel 文件的示例代码。我们将创建一个名为 example.xlsx 的文件,并添加三个工作表,每个工作表中都填充一些基本数据。

import openpyxl
from openpyxl import Workbook

# 创建一个新的工作簿
workbook = Workbook()

# 创建第一个工作表
sheet1 = workbook.active
sheet1.title = "Sheet1"
sheet1["A1"] = "名称"
sheet1["B1"] = "年龄"
sheet1.append(["Alice", 30])
sheet1.append(["Bob", 24])

# 创建第二个工作表
sheet2 = workbook.create_sheet(title="Sheet2")
sheet2["A1"] = "产品"
sheet2["B1"] = "价格"
sheet2.append(["苹果", 3.5])
sheet2.append(["香蕉", 2.0])

# 创建第三个工作表
sheet3 = workbook.create_sheet(title="Sheet3")
sheet3["A1"] = "城市"
sheet3["B1"] = "人口"
sheet3.append(["北京", 21542000])
sheet3.append(["上海", 24240000])

# 保存工作簿
workbook.save("example.xlsx")

print("创建的 Excel 文件已保存:example.xlsx")

代码解析

  1. 创建工作簿: 我们使用 Workbook() 创建一个新的工作簿。
  2. 添加工作表:
    • 首先获取并命名第一个工作表。
    • 使用 create_sheet() 方法创建第二和第三个工作表,并通过 title 参数为它们命名。
  3. 数据填充: 使用直接赋值的方式或者 append() 方法为每个工作表添加数据。
  4. 保存文件: 最后,通过 save() 方法将文件保存在当前目录中。

状态图

为了直观了解整个过程,我们可以绘制一个状态图,描述从创建工作簿到保存文件的状态变化:

stateDiagram
    [*] --> 创建工作簿
    创建工作簿 --> 添加工作表 : 创建 Sheet1
    添加工作表 --> 添加数据 : 为 Sheet1 填充数据
    添加工作表 --> 添加工作表 : 创建 Sheet2, Sheet3
    添加工作表 --> 添加数据 : 为 Sheet2 填充数据
    添加工作表 --> 添加数据 : 为 Sheet3 填充数据
    添加数据 --> 保存文件 : 保存工作簿
    保存文件 --> [*]

结论

通过使用 openpyxl,我们可以轻松创建和管理带有多个工作表的 Excel 文件。这个库的简单性和强大功能使得它非常适合处理各种数据分析和报告需求。无论是创建多个工作表,还是为每个工作表添加数据,openpyxl 都提供了直观易用的接口。希望本文的示例和解释能帮助你在使用 Python 处理 Excel 文件时更加得心应手。

如果你对数据分析和处理有更深的兴趣,openpyxl 只是一个开始,还有其他许多库和工具可供探索,例如 pandas 用于数据分析,matplotlib 用于数据可视化等。继续学习,提升你的 Python 技能,让数据为你服务!