有没有办法在Python上使用'openpyxl'查找迭代的当前行?

时间:2019-08-21 02:32:25

标签: python openpyxl

我正在处理一个xlsx文件,该文件按具有空行的部分划分,并且每个部分具有以不同方式(即不同列)显示的信息。 所以我基本上是想找到我要寻找的部分('Ação'),并从下一行(标题在哪里)到下一个空行创建一个范围,以便我可以创建此范围的DataFrame。

当我尝试打印索引时,它返回一个包含行值的元组,但是我找不到返回其索引(整数)的方法

from openpyxl import load_workbook

data = '2019/02/07'
symbol = 'EQTL3'
ano = data[0:4]
mes = data[5:7]
dia = data[8:10]
file = "Fundo_{}{}{}.xlsx".format(ano, mes, dia)

wb = load_workbook(filename=file, read_only=False)
ws = wb["Fundo_{}{}{}".format(ano, mes, dia)]

for cell in ws['A']:
if (cell.value == 'Ação'):
    x = int(cell.coordinate[1:]) + 1
    for index in ws.iter_rows(min_row=x, max_col=ws.max_column, max_row=ws.max_row, values_only=True):
        if (index[0] == None):
            y = ws._current_row
            break

我希望收到的整数值的最后一行的索引不同于空值。

1 个答案:

答案 0 :(得分:1)

您可以为此使用枚举。 像这样的东西:

for row_idx, row_of_cells in enumerate(ws.iter_rows(min_row=x, values_only=True), start=1):