我正在学习openpyxl,我想创建一个包含2个单元格的图纸,值为1和2,找到它们的总和,然后将总和加到前一个数字,依此类推(我认为它可能被称为高斯求和)。
ws["A1"] = 1
ws["A2"] = 2
for row in ws.iter_rows(min_col=1,max_col=1,min_row=1,max_row=10):
for cell in row:
iteration = 1
value_1 = 1
value_2 = 2
if value_1 == 1 and value_2 == 2:
value_3 = ws.cell(row = iteration, column=1, value= value_1).value + ws.cell(row = iteration + 1, column=1, value= value_2).value
d = ws.cell(row = iteration + 2, column=1, value= value_3)
else:
value_3 = ws.cell(row = iteration, column=1, value= value_1).value + ws.cell(row = iteration + 1, column=1, value= value_2).value
d = ws.cell(row = iteration + 2, column=1, value= value_3)
iteration += 2
value_1 = value_2
value_2 = value_3`
代码在A3中打印3,但随后停止。我不确定上面的代码究竟是什么导致了问题,但我期望第一个if语句对初始给定值求和,然后第二个if语句循环连续结果的总和并粘贴它们进入下一个空单元格。
iteration
指定用于计算value3
的行,每次迭代重置为1。