taiyang1888 2022-08-19 17:38 采纳率: 50%
浏览 120
已结题

openpyxl delete_rows 删除行结果不对

用openpyxl 删除excel 表里第一列不是天翼的行

一行一行的删我知道,就是想有没有办法几行一起删

import openpyxl
wb = openpyxl.load_workbook("F:\desk\拆\检查.xlsx")
ws=wb.active
n=0
m=0
for i in ws['A'][::-1]:
if n==0 and i.value!='天翼':
n=i.row
elif n>0 and i.value=='天翼':
m=i.row+1
print(m,n)
ws.delete_rows(m,n) #每次都把m行开始下面所有的行删除了
n=0
m=0
wb.save("F:\desk\检查2.xlsx")

#每次都把m行开始下面所有的行删除了

img

img

  • 写回答

4条回答 默认 最新

  • 石岩Maple 2022-08-19 17:41
    关注

    print的值输出截个图,你这个代码明显从1开始,所以0之后的行应该都是被删了的

    评论

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 8月20日
  • 请采纳用户回复 8月20日
  • 修改了问题 8月19日
  • 修改了问题 8月19日
  • 展开全部