希望可以有更有效的方法,非常感谢
代码如下所示。
首先关于你的要求,我有一个问题,如果出现[1, 2, 3, 100]这样的原始数据列表,该如何分组呢?两个为一组的话,必然有一个分不到组;还是说把最后一个分不到组的数字和100相加?因为我无法理解这样的分组方式,所以在我的代码中,一旦遇到那种情况,我默认将那个分不到组的数字单独作为一个subtotal值,不进行分组。
nums = [8, 1, 2, 7, 13, 4, 6, 7, 1, 11] #需要处理的原始列表
subtotals = [] #subtotal的结果
max = 10 #阈值
i = 0
for num in nums:
i += 1
if num > max:
subtotals.append(num)
i += 1
continue
if i % 2 == 0:
subtotals[-1] += num
else:
subtotals.append(num)
print(subtotals)
最后打印出结果: