1

我正在尝试做一些我觉得应该非常直截了当的事情,但似乎并不作为 xlrd Book Class 的属性而存在。

在解析目录中的所有 xlsx 文件时,我想记录哪个文件中存在哪些错误。为此,我需要打印正在处理的文件名。

目标:打印 xlrd 正在处理的文件的名称。即:以下示例中的“filename.xlsx”

示例代码:

Wb = xlrd.open_workbook ( "./data/excel_files/filename.xlsx" )
print "File being processed is: %s" % Wb.name_obj_list[0].name

这将输出“_xlnm._FilterDatabase”。我想打印“filename.xlsx”。Book Class 的文档没有简单的方法来做到这一点。 http://www.lexicon.net/sjmachin/xlrd.html#xlrd.Book-class

有什么建议吗?

4

2 回答 2

0

我只是将文件名与另一个类的 Wb 对象一起传递并打印出来。

于 2013-02-07T03:48:23.280 回答
0

尝试简单的方法:

for filename in glob('*.xls*'):
    try:
       wb = xlrd.open_workbook(filename)
    except xlrd.XLRDERROR:
       print 'Problem processing {}'.format(filename)
于 2013-02-05T06:34:08.967 回答