问题描述
A B C D
1 long short suggested_long suggested_short
2 -2.11 5.11 #N/A
3 -4.11 3.66 #REF! #N/A
4 93.44 7.55 0 0
5 1256.4 966.5 563.5 #REF!
因此,在cell(A1)中是long,在cell(B2)中是5.11; 我想清除suggested_long和suggested_short中的所有值,但需要保留列名行,因为我需要在清除所有值后插入数据。那么结果应该是:
A B C D
1 long short
2 -2.11 5.11
3 -4.11 3.66
4 93.44 7.55
5 1256.4 966.5
我知道openpyxl可以做到:
for row in ws['C1:D5']:
for cell in row:
cell.value = None
删除单元格中的值,但是我在“ suggest_long”和“ suggested_short”中不确定单元格的数量。我认为其他人可能也有同样的问题,所以我在这里张贴,非常感谢
解决方法
尝试一下:
for row in ws['C2:D'+str(len(ws['D']))]:
for cell in row:
cell.value = None
,
当然,最简单的事情就是删除列并替换标题:
ws.delete_cols(3,2)
ws["C1"] = "suggested_long"
ws["D1"] = "suggested_short"
否则请使用ws.iter_rows(min_row=2,min_col=3)