函数查找python中每5个元素的累积和

函数查找python中每5个元素的累积和,python,python-3.x,list,Python,Python 3.x,List,有些元素可能不是int类型,函数需要优雅地处理异常并传递给下一个元素。函数应该返回一个列表,其中每个元素都应该是输入列表中每5个元素的累积和 sample_input = [50, 30, 20, 0, "catch_me", 0, "you_got_me", "did_you_really_catch", 40, 50, "20", 0, 0, 0, 10] expected_output = [100, 190,

有些元素可能不是int类型,函数需要优雅地处理异常并传递给下一个元素。函数应该返回一个列表,其中每个元素都应该是输入列表中每5个元素的累积和

sample_input = [50, 30, 20, 0, "catch_me", 0, "you_got_me", "did_you_really_catch", 40, 50, "20", 0, 0, 0, 10]
expected_output = [100, 190, 200]
到目前为止,我已经尝试了以下代码片段

a=[]
count=0
n=5
for i in sample_input:

    if isinstance(i,int):
        for j in range(len(sample_input)/5):
            count+=i
            a.append(count)
print (a)

有人能建议我如何获得这个问题的预期输出吗?

首先过滤整数,然后求和:

filtered=[x代表样本中的x\u输入,如果是instance(x,int)]
结果=[]
总和=0
对于范围内的i(0,len(已过滤),5):
总和+=总和(已过滤[i:i+5])
result.append(总和)
打印(结果)#[100190200]
输出:

[100, 190, 200]

您的筛选将不尊重OP对每个分组5项进行计数的请求。它可能适用于所提供的示例,但如果您将第一组中的
30更改为“30”
,则不起作用。预期结果为[100190200],每5个元素的累积和,并丢弃字符串类型元素
[100, 190, 200]