1

我想从.ods文件中读取数据(使用ezodf),并将其转换为 JSON。

这是我的代码:

try:
    while conf[i, 2].value != None:
        export_data['priorities'][conf[i, 2].value] = str(int(conf[i, 3].value))
        i+=1
except IndexError:
    print("This probably has a better solution.");

conf[x, y]引用工作conf表中的单元格。如您所见i,只要其中没有空单元格,我就想读取列的值。

问题是第一个空单元格引发了IndexError异常。

我可以通过简单的方式解决这个问题,例如,检查此列的长度吗?

4

1 回答 1

1

这应该是您要查找的内容(我假设conf是电子表格):

for i in range(conf.nrows()):
   export_data['priorities'][conf[i, 2].value] = str(int(conf[i, 3].value))

但是您应该知道,int(conf[i, 3].value)如果电子表格包含非整数值,该位将引发异常。

您的try/except执行此操作的方法没有什么大问题。

于 2013-01-25T17:10:54.177 回答