我正在使用xlrd模块在python中读取excel文件。示例代码位于
之下import xlrd
import sys
import glob
workbook = xlrd.open_workbook('nvm_sw_cfg_parm_master_v85.xlsx')
sheet_names = workbook.sheet_names()
print('Sheet Names', sheet_names)
for sheet in sheet_names:
print sheet
print sheet.nrows
这是我尝试的示例代码。在这段代码中,我可以读取工作表名称,但是当我读取工作表中的总行数时,它显示错误,如
AttributeError: 'unicode' object has no attribute 'nrows'
我已经浏览了库文件文档中有一个类名称调用表,其中定义了 nrows ,我怎么能从代码中调用它,请有人可以帮我解决这个错误或任何其他模块来读取excel文件。
答案 0 :(得分:1)
xlrd
sheet
确实有nrows
属性。但是您的代码将变量sheet
设置为字符串值。这一行:
sheet_names = workbook.sheet_names()
返回名称而非表的列表。如果您想了解有关工作表的更多信息而不是其名称,则您的代码需要检索工作表,而不仅仅是其名称:
sheets = workbook.sheets()
for sheet in sheets:
...
然后变量sheet
实际上将包含一个工作表,而不仅仅是一个字符串。