代码之家  ›  专栏  ›  技术社区  ›  Uzzy

OpenPyXL-如何跳过单元格中的行。值为无

  •  0
  • Uzzy  · 技术社区  · 6 年前

    我正在使用OpenPyXL读取excel文件中的工作表,并将其部分加载到数据帧(首先将每行读取到列表列表,然后将其转换为数据帧)。问题是,我正在寻找优雅的解决方案来跳过单元格中的行。第一个单元格的值为“无”

    我用以下代码遍历行:

    for row in ws.iter_rows(min_col=adres[0], min_row=adres[1], max_col=adres[2], max_row=adres[3]):
        data_rows.append([cell.value for cell in row]) 
    
    2 回复  |  直到 6 年前
        1
  •  3
  •   Uzzy    6 年前

    非常感谢。

    在这里,它工作得很好:

    for row in ws.iter_rows(min_col=adres[0], min_row=adres[1], max_col=adres[2], max_row=adres[3]):
        if row[0].value is not None:
            data_rows.append([cell.value for cell in row])
        else: continue
    
        2
  •  0
  •   Charlie Clark    6 年前

    def skip_empty_rows(ws):
        for row in ws.values:
            if row[0] is None:
               continue
            yield row
    
    df = pd.DataFrame((skip_empty_rows(ws))