python如何采用openpyxl批量删除满足条件的行?

需求∶一张数万行的excel要根据某列(或多列)的值进行筛选后删除。
现解决方案∶采取逐行读取某列(或多列)的值,判断该值是否满足条件,满足的进行删除。
问题∶程序运行相当的慢,得半小时才能完成删除。
需求∶有没快速批量删除的方法

逐行删除法,求批量删除法
i =1
j= ws.max_row
while i < j: #从第一行开始遍历
i = i+1
if (ws.cell(row=i, column=7).value == '收货在途库存') |
(ws.cell(row=i, column=7).value == '收货冲销: 在途库存'):
ws.delete_rows(i)
i = i-1

你可以尝试一下,用pandas来处理,读取数据,按条件筛选需保留的行,然后将数据框再重新写入excel。