Python 根据列的格式从excel中删除记录

Python 根据列的格式从excel中删除记录,python,Python,希望每个人都有一个伟大的一天 我正在尝试从excel中读取数据,但在此之前,我希望删除struckthrough(删除线:-字符串格式,如粗体或斜体)记录,并将数据替换为null/space。是否有任何包/代码可以帮助我找到特定单元格的格式并删除其值 期待你的帮助 谢谢, 普拉善 打开传递参数formatting_info=True的工作簿 获取单元格的XF对象和字体对象 您将在删除的属性中找到您的值 这也可以通过openpyxl实现 from openpyxl import load_work

希望每个人都有一个伟大的一天

我正在尝试从excel中读取数据,但在此之前,我希望删除struckthrough(删除线:-字符串格式,如粗体或斜体)记录,并将数据替换为null/space。是否有任何包/代码可以帮助我找到特定单元格的格式并删除其值

期待你的帮助

谢谢, 普拉善

  • 打开传递参数formatting_info=True的工作簿
  • 获取单元格的XF对象和字体对象
  • 您将在删除的属性中找到您的值

  • 这也可以通过openpyxl实现

    from openpyxl import load_workbook
    
    
    wb = load_workbook("strikethrough.xlsx")
    ws = wb.active # wb.sheetnames[0] will do, too
    for row in ws:
        for cell in row:
            value = cell.value # Note, empty cells have a value of None
            if cell.font.strike:
                value = ""
            print(value)
            #print(cell.font) # See more attributes
    
    wb.close()
    
    将此作为我的电子表格:

    我得到这个输出:

    HeaderA
    HeaderB
    Row2 ColA
    
    Row3 ColA
    Row3 ColB
    
    
    None
    None
    Above cell is empty
    None
    
    HeaderA
    HeaderB
    Row2 ColA
    
    Row3 ColA
    Row3 ColB
    
    
    None
    None
    Above cell is empty
    None