excel 从openpyxl获取工作表名称

67up9zun  于 2022-11-18  发布在  其他
关注(0)|答案(5)|浏览(262)

我有一个中等大小的xlsx文件(大约14 MB),OpenOffice在尝试打开它时挂起。我尝试使用openpyxl来读取内容,按照本教程进行操作。代码片段如下所示:

from openpyxl import load_workbook
 wb = load_workbook(filename = 'large_file.xlsx', use_iterators = True)
 ws = wb.get_sheet_by_name(name = 'big_data')

问题是,我不知道工作表名称,Sheet 1/Sheet 2..等不起作用(返回NoneType对象)。我找不到一个文档告诉我如何使用openpyxl获得xlsx文件的工作表名称。有人能帮助我吗?

m528fe3b

m528fe3b1#

使用sheetnames属性:
工作表名称
返回此工作簿中工作表的名称列表。
按工作表顺序返回名称。
类型:字符串列表

print (wb.sheetnames)

您也可以从wb.worksheets取得工作表对象:

ws = wb.worksheets[0]
jpfvwuh4

jpfvwuh42#

python 3.x****若要取得工作表名称,您必须使用属性

g_sheet=wb.sheetnames

按列表返回

for i in g_sheet:
    print(i)

选择任何名称

ws=wb[g_sheet[0]]

**或ws=wb[任何名称]**假设工作表名称为paster

ws=wb["paster"]
hyrbngr7

hyrbngr73#

作为对其他答案的补充,对于特定的工作表,还可以在构造函数参数中使用cf documentation:

ws.title
w8ntj3qf

w8ntj3qf4#

如前面的答案所述,您可以使用ws.sheetnames
但如果知道工作表名称,则可以通过以下方式获取该工作表对象:

ws.get_sheet_by_name("YOUR_SHEET_NAME")

另一种方法如前面的答案所述

ws['YOUR_SHEET_NAME']
lnlaulya

lnlaulya5#

for worksheet in workbook:
    print(worksheet.name)

相关问题