worksheet.iter_rows()不从电子表格中提取任何数据

时间:2012-06-21 19:13:22

标签: python excel openpyxl

我有一个使用openpyxl的iter_rows函数解析的数据电子表格。但是,当我使用:

循环播放工作表时
range_expr = "{col}{startrow}:{col}{endrow}".format(col='C',startrow=4,endrow=ws.get_highest_row()+1)

for row in ws.iter_rows(range_string=range_expr):
    print row
    if len(row) > 0:
        cell = row[0]
        if str(cell.value).isdigit():
            address.append(cell.value)
        else:
            continue
print address
raw_input("enter to continue")

第3行只是吐出空括号,这意味着第一个if语句将始终评估为false,并且没有值将附加到地址。我感到困惑的是,当excel文档中有数据时print row什么都不做。在此先感谢大家。

1 个答案:

答案 0 :(得分:0)

我过度复杂化了事情,并将其简化为此。非常感谢Python聊天室中的notbad.jpg:

range_expr = 'C:C'

for row in ws.iter_rows(row_offset=4):
    '''do things'''