我刚刚更新了openpyxl,因为我需要一些新功能,但现在这已经破坏了我所有的旧脚本。这是我得到的主要错误:
TypeError: 'generator' object has no attribute '__getitem__'
我有很多实例,我会采用行或列,然后将其存储为列表:
templateHeaders = []
for templateHeader in activeSheet.rows[0]:
templateHeaders.append(templateHeader.value)
现在.rows[rowNumber]
或.columns[columnNumber]
不再有效。我已经尝试将其更改为.iterrows
,但这些都不适用于我的其余代码,例如它会出现错误,说元组没有值。
答案 0 :(得分:2)
2.4 release notes中涵盖了这一点:ws.rows
现在ws.columns
始终返回生成器。
对于第一行中的单元格,您可能只需要for cell in activeSheet[1]
。