从openpyxl获取工作表名称

时间:2014-05-07 20:36:37

标签: python excel openpyxl

我有一个中等大小的xlsx文件(大约14 MB),OpenOffice挂起试图打开它。我试图在openpyxl之后使用this tutorial来阅读内容。代码段如下:

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

问题是,我不知道工作表名称,而Sheet1 / Sheet2 ..等不起作用(返回NoneType对象)。我找不到文档告诉我如何使用openpyxl获取xlsx文件的工作表名称。任何人都可以帮助我吗?

3 个答案:

答案 0 :(得分:56)

使用sheetnames property

  

sheetnames

     

返回此工作簿中工作表的名称列表。

     

名称以工作表顺序返回。

     

类型:字符串列表

print (wb.sheetnames)

您还可以从wb.worksheets获取工作表对象:

ws = wb.worksheets[0]

答案 1 :(得分:0)

如前所述 您可以获取工作表名称列表 通过使用ws.sheetnames

但是如果您知道工作表名称,则可以通过以下方式获取该工作表对象

ws.get_sheet_by_name("YOUR_SHEET_NAME")

另一种方法是如先前的答案中所述

ws['YOUR_SHEET_NAME']

答案 2 :(得分:0)

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

g_sheet=wb.sheetnames

按列表返回

for i in g_sheet:
    print(i)

**请选择任何姓名**

ws=wb[g_sheet[0]]

或ws = wb [任何名称] 假设姓名单是粘贴纸

ws=wb["paster"]
相关问题