我无法使用搜索功能找到答案,所以我开始这个话题。
考虑有一个可以被 x 整除的列表。 例如:
onetonine = [1,2,3,4,5,6,7,8,9]
在这种情况下,示例 x 将为 3。
现在我想用
创建一个新列表len(onetonine)/x
元素,这意味着 3 个元素。
重要的是,我希望新列表的元素是旧列表的每个 x 元素的总和。 这意味着:
newlist = [6, 15, 24]
所以基本上从我的旧列表中取出 x=3 个元素并添加它们。重复直到完成。
我无法为此找到可行的解决方案,所以我正在寻求帮助。
谢谢。
最佳答案
以下对适当切片的总和的列表理解将起作用:
>>> [sum(onetonine[i:i+3]) for i in range(0, len(onetonine), 3)]
[6, 15, 24]
注意:如果原始列表的长度不能被 block 长度整除,这将不会丢弃任何剩余部分,而只是添加最后一个(较短的) block 的总和。
关于Python:对列表中的 x 个元素求和,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47620259/