将Openpyxl从2.3.2更新到2.4.1导致错误.rows [rowNumber]是否有解决方法?

时间:2016-12-21 09:49:40

标签: python python-2.7 openpyxl

我刚刚更新了openpyxl,因为我需要一些新功能,但现在这已经破坏了我所有的旧脚本。这是我得到的主要错误:

TypeError: 'generator' object has no attribute '__getitem__'

我有很多实例,我会采用行或列,然后将其存储为列表:

templateHeaders = []
    for templateHeader in activeSheet.rows[0]:
        templateHeaders.append(templateHeader.value)

现在.rows[rowNumber].columns[columnNumber]不再有效。我已经尝试将其更改为.iterrows,但这些都不适用于我的其余代码,例如它会出现错误,说元组没有值。

1 个答案:

答案 0 :(得分:2)

2.4 release notes中涵盖了这一点:ws.rows现在ws.columns始终返回生成器。

对于第一行中的单元格,您可能只需要for cell in activeSheet[1]