在 Python 数据处理场景中,Excel 是最常用的结构化数据文件格式之一。获取 Excel 工作簿内的所有工作表名称,是读取、遍历、处理 Excel 数据的基础前置操作。本文介绍如何使用 Python 和免费库 Free Spire.XLS for Python 获取 Excel 中的所有工作表名称以及仅获取隐藏工作表的名称。
一、环境准备
在使用该库前,需通过pip完成库的安装,这是唯一的环境配置步骤:
pipinstallSpire.Xls.Free该库为免费社区版,可直接用于个人学习、商业项目的 Excel 基础处理,无需额外授权,但有一定篇幅限制。
安装完成后,在 Python 脚本中导入所需的模块:
fromspire.xlsimport*fromspire.xls.commonimport*二、获取所有工作表的名称
免费 Python 库提供的Worksheet.Name属性可以返回指定工作表的名称。遍历Workbook.Worksheets集合中的每个Worksheet对象,即可逐一获取其名称。
以下代码演示了如何读取一个 Excel 文件中的所有工作表名称并输出到控制台:
fromspire.xlsimport*fromspire.xls.commonimport*# 创建 Workbook 实例并加载 Excel 文件workbook=Workbook()workbook.LoadFromFile("测试.xlsx")# 遍历每一个工作表并输出名称forsheetinworkbook.Worksheets:print(sheet.Name)以上方法可以获取包括隐藏工作表在内的全部工作表名称。输出结果:
如果需要将工作表名称保存下来供后续处理,可以将其存入列表:
names=[]forsheetinworkbook.Worksheets:names.append(sheet.Name)# 或使用列表推导式names=[sheet.Nameforsheetinworkbook.Worksheets]三、仅获取隐藏工作表的名称
如果只需要获取隐藏工作表的名称,可以在遍历工作表的过程中使用Worksheet.Visibility属性判断当前工作表是否处于隐藏状态。当该属性等于WorksheetVisibility.Hidden时,即为隐藏工作表。
示例代码如下:
fromspire.xlsimport*fromspire.xls.commonimport*workbook=Workbook()workbook.LoadFromFile("测试.xlsx")forsheetinworkbook.Worksheets:ifsheet.Visibility==WorksheetVisibility.Hidden:print(sheet.Name)在实际业务中,隐藏工作表的名称可能需要单独记录。以下代码将隐藏工作表的名称收集到列表中并输出:
hidden_names=[sheet.Nameforsheetinworkbook.Worksheetsifsheet.Visibility==WorksheetVisibility.Hidden]四、扩展建议
获取工作表名称后,可以根据名称执行差异化的处理逻辑。例如,通过workbook.Worksheets[sheet_name]或按索引获取特定工作表对象后,再进行读取数据、写入数据或修改格式等操作。Free Spire.XLS for Python 还提供了创建新的工作表、复制工作表、设置工作表可见性等完整的工作表管理功能,可根据实际需要进一步扩展。
此外,在将工作表名称与其他数据关联处理时,建议对名称进行必要的格式化处理(如去除首尾空格),以确保匹配准确。