有一个需求,如果将一行内含某些关键字的话,就删掉一整行,因此我写了下面这样一个函数:
def delete_row(sheet_obj, str_excel):
"""删除含关键字的行"""
for row_obj in sheet_obj.iter_rows(min_row=2):
for i in row_obj:
# print(type(i.row))
if str_excel in str(i.value):
sheet_obj.delete_rows(i.row) # 删除含上面关键字的行
else:
continue
但在对下面这个表进行操作的时候:
我调用函数并传入下面的参数:
delete_row(wb.active,"季度")
执行函数后,表里面两行数据都被删掉了,我明明只指定含季度两个字,但出来的结果却不尽人意,请问各位这是为什么呢?