Skip to main content
 首页 » 编程设计

python之总结列表中的每个交替 4 个元素

2025年05月04日14java哥

我是 python 的新手,我有很长的列表(列表中大约有 100 个元素)。我想添加此列表的每第 4 个元素并将结果存储为 sum1、sum2、sum3 或 sum4 >。 我使用了以下代码:

while y in range(0,104): 
    if y%4==0: 
    sum=last_indexes[y]+sum 
    y=y+4 

问题:

  1. 如果列表增加,编译时间也会增加。 python 中有什么函数可以加快这个过程吗?
  2. 此外,如果列表不是 4 的倍数,但我仍想将其存储在 sum1、sum2、sum3、sum4 中,那么应该进行哪些修改。

感谢您的时间和考虑

请您参考如下方法:

不,如果输入较大,您不能使代码以相同的速度运行(不是编译)。

处理此问题的更 Pythonic 方法是使用列表切片,即使列表的长度不是 4 的倍数也应该有效:

sum1 = sum(last_indices[::4]) 
sum2 = sum(last_indices[1::4]) 
sum3 = sum(last_indices[2::4]) 
sum4 = sum(last_indices[3::4]) 

a:b:c 的切片表示法表示“从索引 a 开始,转到索引 b,以 为增量>c”。当省略 a 时,假定为 0。当省略 b 时,假定它是列表的末尾。