【发布时间】:2020-01-22 20:15:53
【问题描述】:
我需要遍历具有'A1', 'O1', 'R1:S1' 结构的不相交范围。
有许多工作簿,并且每个工作簿的相应工作表中有许多行要迭代(例如,“Sheet1”的第 21、24、31:35、40 行)。
有没有一种简单的方法可以使用 openpyxl 或其他库对其进行迭代?
目前我对每一行都使用以下内容,这是不可接受的。
wb = openpyxl.load_workbook(filename)
sheet = wb['Sheet1']
for cellObj in sheet['A1:S2']:
for cell in cellObj:
pass
我未能在文档中找到提示。 在这种情况下可能是其他一些库或不同的方法适用吗?
【问题讨论】:
-
你可以这样做:
for row in (21, 24, (31, 35), 40):和values = [cell(row=row, column=col).value for col in (A, O, R, S)] -
@stovfl,我对 'str' 和 'int' 有一些问题。我应该使用一些
column_index_from_string吗? -
我应该使用一些
column_index_from_string吗?:是的,我的(A, O, R, S)应该是int。 -
MultiCellRange听起来很有用。 -
@CharlieClark,你能详细说明一下吗?