在 Python 中创建 Excel 文件

Python) 在过去几年中已成为主流编程语言之一。 Python 的实用性和流行性极大地壮大了 Python 爱好者社区。另一方面,电子表格自动化使保存、组织和处理来自 Web 或桌面应用程序中的大量数据变得更加容易。本文旨在将 Python 和电子表格自动化结合在一起,向您展示如何在 Python 中创建 Excel XLSX 或 XLS 文件。此外,您将学习如何使用 Python 以编程方式在 Excel 文件中插入数据、图像、图表和表格。

用于创建 Excel XLS 文件的 Python API - 免费下载

Aspose.Cells for Python 是一个功能强大且易于使用的电子表格操作 API,可让您使用 Python 在应用程序中实现电子表格自动化。您可以在几行代码中创建新的 Excel 文件以及更新和转换现有的电子表格文档。为了通过 Java 集成和使用 Aspose.Cells for Python,请执行以下 pip 命令。

pip install aspose-cells

您还可以从 下载 部分下载 API 的包。

在 Python 中创建 Excel XLSX 文件

让我们首先使用 Aspose.Cells for Python 通过 Java 创建一个简单的 Excel XLSX 文件。以下是执行此操作的步骤:

以下代码示例展示了如何使用 Python 创建 Excel XLSX 文件。

# 创建一个新的 XLSX 工作簿
wb = Workbook(FileFormatType.XLSX)
# 在单元格中插入值
wb.getWorksheets().get(0).getCells().get("A1").putValue("Hello World!")
# 将工作簿另存为 .xlsx 文件
wb.save("workbook.xlsx")

输出

使用python创建excel文件

将数据插入 Excel 文件的 Python 代码

在前面的示例中,您从头开始创建了一个新的 Excel XLSX 文件。但是,您可能需要更新现有 Excel 文件的内容。在这种情况下,您可以通过将 Excel 文件的路径提供给 Workbook 构造函数来加载它。访问工作表和单元格的其余方法将保持不变。

以下代码示例展示了如何使用 Python 更新 Excel 文件。

# 创建一个新的 XLSX 工作簿
wb = Workbook("workbook.xlsx")
# 在单元格中插入值
wb.getWorksheets().get(0).getCells().get("A1").putValue("Location")
wb.getWorksheets().get(0).getCells().get("B1").putValue("Person")
wb.getWorksheets().get(0).getCells().get("A2").putValue("Home")
wb.getWorksheets().get(0).getCells().get("B2").putValue("abc")
wb.getWorksheets().get(0).getCells().get("A3").putValue("Office")
wb.getWorksheets().get(0).getCells().get("B3").putValue("xyz")
# 将工作簿另存为 .xlsx 文件
wb.save("workbook-updated.xlsx")

输出

在python中更新excel文件

Python创建具有图像的Excel文件

在前面的两个示例中,您已经了解了如何在 Excel 工作表的单元格中插入或更新文本。现在让我们看看如何使用 Python 将图像插入到工作表中。

以下代码示例展示了如何使用 Python 创建 Excel 文件和插入图像。

# 创建一个新的 XLSX 工作簿
workbook = Workbook(FileFormatType.XLSX)
worksheet = workbook.getWorksheets().get(0)
# 将字符串值插入单元格
worksheet.getCells().get("C2").setValue("Image")
# 设置第 4 行高度
worksheet.getCells().setRowHeight(3, 150)
# 设置C列宽
worksheet.getCells().setColumnWidth(3,50)
# 将图片添加到 D4 单元格
index = worksheet.getPictures().add(3, 3, "aspose-cells-for-python.png")
# 获取图片对象
pic = worksheet.getPictures().get(index)
# 保存 Excel 文件 
workbook.save("workbook_with_image.xlsx")

输出

使用python在excel中插入图像

在 Python 中的 Excel XLS 中生成图表

Excel 工作表中的图表用于以直方图、金字塔、条形、甜甜圈等形式直观地表示数据。Aspose.Cells for Python via Java 支持 此处 列出的多种图表类型。以下是在 Excel 工作表中生成图表的步骤。

以下代码示例展示了如何使用 Python 在 Excel XLS 中生成图表。

# 创建一个新的 XLSX 工作簿
workbook = Workbook(FileFormatType.XLSX)
# 获得第一个工作表的参考
worksheets = workbook.getWorksheets()
sheet = worksheets.get(0)
# 向单元格添加一些样本值
cells = sheet.getCells()
cell = cells.get("A1")
cell.setValue(50)
cell = cells.get("A2")
cell.setValue(100)
cell = cells.get("A3")
cell.setValue(150)
cell = cells.get("B1")
cell.setValue(4)
cell = cells.get("B2")
cell.setValue(20)
cell = cells.get("B3")
cell.setValue(50)
# 在工作表中获取图表
charts = sheet.getCharts()
# 将图表添加到工作表
chartIndex = charts.add(ChartType.PYRAMID, 5, 0, 15, 5)
chart = charts.get(chartIndex)
# 将 NSeries(图表数据源)添加到图表中,范围从“A1”
# 单元格到“B3”
serieses = chart.getNSeries()
serieses.add("A1:B3", True)
# 编写 Excel 文件 
workbook.save("workbook_with_chart.xlsx")

输出

使用python在excel中创建图表

在 Python 中创建 Excel 数据透视表

Excel 中的数据透视表用于汇总工作表中的大量数据。您可以指定要在数据透视表中使用的单元格范围。以下是通过 Java 使用 Aspose.Cells for Python 创建数据透视表的步骤。

以下代码示例展示了如何使用 Python 在 Excel XLSX 中创建数据透视表。

# 创建一个新的 XLSX 工作簿
workbook = Workbook(FileFormatType.XLSX)
# 获取新增工作表的引用
sheetIndex = workbook.getWorksheets().add()
sheet = workbook.getWorksheets().get(sheetIndex)
cells = sheet.getCells()

# 为单元格设置值
cell = cells.get("A1")
cell.setValue("Sport")
cell = cells.get("B1")
cell.setValue("Quarter")
cell = cells.get("C1")
cell.setValue("Sales")

cell = cells.get("A2")
cell.setValue("Golf")
cell = cells.get("A3")
cell.setValue("Golf")
cell = cells.get("A4")
cell.setValue("Tennis")
cell = cells.get("A5")
cell.setValue("Tennis")
cell = cells.get("A6")
cell.setValue("Tennis")
cell = cells.get("A7")
cell.setValue("Tennis")
cell = cells.get("A8")
cell.setValue("Golf")

cell = cells.get("B2")
cell.setValue("Qtr3")
cell = cells.get("B3")
cell.setValue("Qtr4")
cell = cells.get("B4")
cell.setValue("Qtr3")
cell = cells.get("B5")
cell.setValue("Qtr4")
cell = cells.get("B6")
cell.setValue("Qtr3")
cell = cells.get("B7")
cell.setValue("Qtr4")
cell = cells.get("B8")
cell.setValue("Qtr3")

cell = cells.get("C2")
cell.setValue(1500)
cell = cells.get("C3")
cell.setValue(2000)
cell = cells.get("C4")
cell.setValue(600)
cell = cells.get("C5")
cell.setValue(1500)
cell = cells.get("C6")
cell.setValue(4070)
cell = cells.get("C7")
cell.setValue(5000)
cell = cells.get("C8")
cell.setValue(6430)

pivotTables = sheet.getPivotTables()
# 将数据透视表添加到工作表
index = pivotTables.add("=A1:C8", "E3", "PivotTable2")
# 访问新添加的数据透视表的实例
pivotTable = pivotTables.get(index)
# 未显示行的总计。
pivotTable.setRowGrand(False)
# 将第一个字段拖到行区域。
pivotTable.addFieldToArea(PivotFieldType.ROW, 0)
# 将第二个字段拖到列区域。
pivotTable.addFieldToArea(PivotFieldType.COLUMN, 1)
# 将第三个字段拖到数据区域。
pivotTable.addFieldToArea(PivotFieldType.DATA, 2)

# 编写 Excel 文件 
workbook.save("workbook_with_pivot_table.xlsx")
使用python在excel中创建数据透视表

用于创建 Excel 文件的 Python API - 获得免费许可证

获取 免费临时许可证 并使用 Aspose.Cells for Python 创建 Excel 文件,没有评估限制。

结论

在本文中,您了解了如何使用 Python 从头开始创建 Excel 文件。此外,您还学习了如何以编程方式在 Excel 工作表中插入数据、图像、图表和数据透视表。您可以使用 文档 了解有关 Aspose 的 Python Excel API 的更多信息。

也可以看看

信息:Aspose 提供其他 Python API(例如,Aspose.Slides for Python via .NET 用于处理 PowerPoint 和其他格式的演示文稿)以及用于查看、编辑、合并和转换文档的免费在线工具(例如例如,PPT 到 JPG 转换器)。