![使用 Python 读取 Excel 文件中的数据](images/Excel-File.jpg#center)
MS Excel 提供了一种以行和列的形式保存和共享数据的便捷方式。更常见的是,Excel 文件用于存储具有成百上千条记录的庞大数据集。在 Python 中处理 Excel 文件时,您可能需要从工作表中的每个单元格读取数据。为此,本文展示了如何在 Python 中读取 Excel 文件。您将学习如何从单个工作表或 Excel 工作簿中的所有工作表中读取数据。
用于读取 Excel 文件的 Python 库
要从工作簿中读取数据,我们将使用 Aspose.Cells for Python via Java。它是一个强大且功能丰富的 Python 库,用于创建 MS Excel 文件。此外,它还允许您无缝地读取和操作现有的 Excel 文件。您可以 下载 库或使用以下 pip 命令安装它。
pip install aspose-cells
在 Python 中读取 Excel 文件
在我们开始阅读数据之前,让我们大致了解一下如何在 Excel 文件中管理数据。 Excel 文件称为充当容器的工作簿。每个工作簿包含一个或多个工作表,每个工作表都由许多单元格组成。这些单元格由行和列唯一标识。所以,为了从一个单元格中读取数据,你需要知道它的行和列索引。
以下是读取 Excel 文件并在 Python 中打印其数据的步骤。
- 使用 Workbook 类加载 Excel 文件。
- 使用 Workbook.getWorksheets() 方法获取 WorksheetCollection 的参考。
- 循环遍历集合中的工作表,并在每次迭代中执行以下步骤:
- 获取对象中工作表的引用。
- 获取工作表中数据行和列的计数。
- 为行启动一个循环。
- 为列启动嵌套循环。
- 使用 Worksheet.getCells().get(rowIndex, columnIndex).getValue() 方法从每个单元格中读取数据。
以下代码示例展示了如何在 Python 中读取 Excel 文件。
# 加载 Excel 工作簿
wb = Workbook("workbook.xlsx")
# 获取工作表集合
collection = wb.getWorksheets()
collectionCount = collection.getCount()
# 循环遍历所有工作表
for worksheetIndex in range(collectionCount):
# 使用其索引获取工作表
worksheet = collection.get(worksheetIndex)
# 打印工作表名称
print("Worksheet: " + str(worksheet.getName()))
# 获取行数和列数
rows = worksheet.getCells().getMaxDataRow()
cols = worksheet.getCells().getMaxDataColumn()
# 循环遍历行
for i in range(rows):
# 循环遍历选定行中的每一列
for j in range(cols):
# 打印单元格值
print(worksheet.getCells().get(i, j).getValue(), end =" | ")
# 打印换行符
print("\n")
以下是我们运行上面的代码示例后得到的输出。
![用Python读取Excel文件工作表中的数据](images/Read-Excel-Files.jpg#center)
在 Python 中读取 Excel 文件
在 Python 中读取 Excel 中的特定工作表
您还可以按照以下步骤读取 Excel 文件中的特定工作表。
- 使用 Workbook 类加载 Excel 文件。
- 使用 Workbook.getWorksheets().get(index) 方法获取所需工作表的参考。
- 获取工作表中数据行和列的计数。
- 为行启动一个循环。
- 为列启动嵌套循环。
- 使用 Worksheet.getCells().get(rowIndex, columnIndex).getValue() 方法从每个单元格中读取数据。
以下代码示例展示了如何从 Python 中的特定工作表中读取数据。
# 加载 Excel 工作簿
wb = Workbook("workbook.xlsx")
# 获取工作表集合
worksheet = wb.getWorksheets().get(0)
# 打印工作表名称
print("Worksheet: " + str(worksheet.getName()))
# 获取行数和列数
rows = worksheet.getCells().getMaxDataRow()
cols = worksheet.getCells().getMaxDataColumn()
# 循环遍历行
for i in range(rows):
# 循环遍历选定行中的每一列
for j in range(cols):
# 打印单元格值
print(worksheet.getCells().get(i, j).getValue(), end =" | ")
# 打印换行符
print("\n")
获取免费 API 许可证
您可以通过申请 免费临时许可证,通过 Java 使用 Aspose.Cells for Python,而不受评估限制。
结论
在本文中,您学习了如何在 Python 中读取 Excel 文件。此外,您还了解了如何从特定工作表或 Excel 工作簿中的所有工作表中读取数据。您可以使用 文档 探索有关 Python 电子表格库的更多信息。如果您有任何问题或疑问,请随时通过我们的 论坛 告诉我们。