我正在学习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语句循环遍历连续结果并粘贴它们进入下一个空单元格。
答案 0 :(得分:0)
iteration
(用于指定用于计算value3
的行)在每次迭代中均重置为1。