Python openpyxl 写入多个sheet

介绍

在数据处理和分析中,我们经常需要将数据写入到Excel文件中,以便更方便地进行查看和分享。Python中的openpyxl库提供了一个简单而强大的方式来处理Excel文件。除了可以读取和修改现有的Excel文件外,openpyxl还允许我们创建新的Excel文件,并在其中写入多个sheet。

本文将介绍如何使用openpyxl库在Python中写入多个sheet,并提供相关的代码示例。

什么是openpyxl?

openpyxl是一个专门用于读写Excel文件的Python库。它提供了一组简单而强大的功能,让我们能够轻松地处理Excel文件中的数据。

使用openpyxl,我们可以读取和修改现有的Excel文件,也可以创建新的Excel文件,并在其中写入数据。它支持多种格式的Excel文件,包括xlsx、xlsm、xltx和xltm等。

安装openpyxl

在开始之前,我们需要先安装openpyxl库。可以使用pip命令来安装openpyxl:

pip install openpyxl

安装完成后,我们就可以开始使用openpyxl来处理Excel文件了。

创建Excel文件

首先,让我们看看如何创建一个新的Excel文件。

import openpyxl

# 创建一个新的Excel文件
workbook = openpyxl.Workbook()

# 获取默认的sheet
sheet = workbook.active

# 修改默认sheet的名称
sheet.title = 'Sheet1'

# 保存文件
workbook.save('example.xlsx')

在上面的代码中,我们首先使用openpyxl.Workbook()创建一个新的Excel文件。然后,通过workbook.active获取默认的sheet,并使用sheet.title属性修改默认sheet的名称为"Sheet1"。

最后,使用workbook.save()将文件保存到指定的路径,这里是"example.xlsx"。

写入数据到Excel文件

现在,让我们来看看如何将数据写入到Excel文件的不同sheet中。

import openpyxl

# 创建一个新的Excel文件
workbook = openpyxl.Workbook()

# 获取默认的sheet
sheet1 = workbook.active

# 修改默认sheet的名称
sheet1.title = 'Sheet1'

# 创建一个新的sheet
sheet2 = workbook.create_sheet(title='Sheet2')

# 向第一个sheet写入数据
sheet1['A1'] = 'Hello'
sheet1['A2'] = 'World'

# 向第二个sheet写入数据
sheet2['A1'] = 'Python'
sheet2['A2'] = 'openpyxl'

# 保存文件
workbook.save('example.xlsx')

在上面的代码中,我们首先创建一个新的Excel文件。然后,通过workbook.active获取默认的sheet,并使用sheet.title属性修改默认sheet的名称为"Sheet1"。

接下来,使用workbook.create_sheet()创建一个新的sheet,并指定名称为"Sheet2"。

然后,我们可以通过使用sheet['单元格位置']的方式来写入数据。在这个例子中,我们向"Sheet1"的A1单元格和A2单元格写入了"Hello"和"World",同时向"Sheet2"的A1单元格和A2单元格写入了"Python"和"openpyxl"。

最后,使用workbook.save()将文件保存到指定的路径,这里是"example.xlsx"。

总结

在本文中,我们介绍了如何使用Python的openpyxl库来写入多个sheet到Excel文件中。我们学习了如何创建一个新的Excel文件,并向不同的sheet中写入数据。

openpyxl提供了丰富的功能,可以让我们更方便地处理Excel文件。除了写入数据外,还可以读取和修改现有的Excel文件,以及进行格式化和样式设置等操作。

希望本文对你了解如何使用openpyxl库来写入多个sheet到Excel文件中有所帮助。如果你有任何问题或建议,请随时在下方留言。

关系图

erDiagram
    CUSTOMER ||--o{ ORDER : has
    ORDER ||--|{ LINE-ITEM : contains
    PRODUCT ||--|{ LINE-ITEM : includes
    LINE-ITEM }|--|| PRODUCT : includes