Python:lis的和部分

2024-09-30 16:31:32 发布

您现在位置:Python中文网/ 问答频道 /正文

给出一张单子,我怎样才能算出其中一部分的和呢?例如:

a = [2,5,4,6,8]
sum(a) = 25

我想知道列表中的一部分是否等于某个数字。
列表部分应该有一定的长度。这是我的目标:

^{pr2}$

“dif_list”中的每个元素都是通过从“ex_list”中取出3个数字并相加得到的,即2+5+4=11、2+5+6=13、2+5+8=15、2+4+6=12等。
另供参考:

ex_list = [2,5,4,6,8]
another_list = partsum(ex_list, 4)
print(another_list) ==> [17, 19, 21, 20, 23]

因为2+5+4+6=17,2+5+4+8=19,等等。
基本上,partsum(thing,num)将获取“thing”的“num”项,将它们相加,并将其附加到一个新列表中。感谢所有帮助,谢谢!在


Tags: 元素目标列表another数字numlistex
1条回答
网友
1楼 · 发布于 2024-09-30 16:31:32

你想要^{}。在

import itertools

lst = [2,5,4,6,8]
combos = itertools.combinations(lst, 3)
# combos is equivalent to
# [ [2, 5, 4], [2, 5, 6], [2, 5, 8],
#   [2, 4, 6], [2, 4, 8], [2, 6, 8],
#   [5, 4, 6], [5, 4, 8], [5, 6, 8],
#   [4, 6, 8] ]
result = [sum(combo) for combo in combos]

相关问题 更多 >