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

Updating Openpyxl from 2.3.2 to 2.4.1 causes error with .rows[rowNumber] is there a workaround?

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

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

在很多情况下,我会取一行或一列,然后将其存储为列表:

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

现在 .rows[rowNumber].columns[columnNumber] 不再有效。我试过将其更改为 .iterrows,但其中的 none 与我的其余代码一起使用,例如它会给出错误,提示元组没有值。

2.4 release notes 中对此进行了介绍:ws.rowsws.columns 现在总是 return 生成器。

第一行的单元格可能只需要 for cell in activeSheet[1]