Python 3.x Openpyxl行和循环之和

Python 3.x Openpyxl行和循环之和,python-3.x,excel,openpyxl,Python 3.x,Excel,Openpyxl,我是openpyxl和python的新手,所以我正在寻找一些关于我的项目的帮助。 我在python上使用openpyxl,我想对行求和,直到它们达到某个数字。在达到某个数字后,它会将总和粘贴到它旁边的单元格中。然后,循环将跳过所有已添加的行,继续到单元格并进行求和 要了解我正在尝试做什么: Edit1:我被困在超出范围的列表索引上 from openpyxl import load_workbook import statistics wb=load_workbook('Algorand.x

我是openpyxl和python的新手,所以我正在寻找一些关于我的项目的帮助。 我在python上使用openpyxl,我想对行求和,直到它们达到某个数字。在达到某个数字后,它会将总和粘贴到它旁边的单元格中。然后,循环将跳过所有已添加的行,继续到单元格并进行求和

要了解我正在尝试做什么:

Edit1:我被困在超出范围的列表索引上

from openpyxl import load_workbook
import statistics

wb=load_workbook('Algorand.xlsx')
sheet=wb.active
testlist = []

for row in list(sheet.columns)[0]:
testlist= testlist + [row.value]

print(testlist)
avg=statistics.mean(testlist)
std=statistics.stdev(testlist)
target=avg+2*std
length=len(testlist)

for i in range(0,length-2):
   if testlist[i]<target:
   sum= testlist[i]+testlist[i+1]
   print(f"firstsum:{sum}")
   sheet.cell(row=i + 1, column=3, value=sum)

     if sum<target:
    next=i+2
    sum=sum+testlist[next]
    print(f"secsum:{sum}")
    sheet.cell(row=i + 1, column=3, value=sum)

        if sum<target:
        next = next + 1
        sum = sum + testlist[next]
        #next=i
        print(f"thirdsum:{sum}")
        sheet.cell(row=i + 1, column=3, value=sum)
从openpyxl导入加载\u工作簿
进口统计
wb=加载工作簿('Algorand.xlsx')
工作表=wb.active
testlist=[]
对于列表中的行(sheet.columns)[0]:
testlist=testlist+[row.value]
打印(测试列表)
平均值=统计平均值(测试列表)
std=statistics.stdev(测试列表)
目标=平均值+2*std
长度=长度(测试列表)
对于范围(0,长度-2)内的i:

如果testlist[i]首先需要在for循环中索引输入位置(行增加,列=1)

您需要一个sum变量来记录添加的总数,它可以在循环之前声明为0

然后,每转一圈,将读取值添加到其中,然后比较条件。
如果没有违反,
继续
,但如果违反,请在其旁边写下总和,然后将总和闪回0。

到目前为止你尝试了什么?嗨,查理,我已经更新了我在上面帖子中的内容。我真的看不懂该代码,但它看起来太复杂,而且做的比你说的要多。