使用python-itertools来查找子列表元素的所有可能组合,这些元素和目标值相加



请注意,我已经完成了已回答的问题,但找不到答案。我对蟒蛇还相当陌生。

我的问题是:

例如,假设:

myList=[[2,4],[1,3],[3,5],[1,4]]

我如何使用python itertools/combings迭代嵌套列表(myList(,以便找到myList元素(即子列表(的所有可能组合,这些元素的零索引(即my list][0](和第一索引(即myList[I]][1](总计为4和11,分别(其中i在范围(len(myList(中(。

myList我想找到满足以下两个条件的子列表的所有可能组合:

sum(myList[i][0](==4并且sum(myList[i][1](==11(其中i在范围内(len(myList((

因此,从myList我想得到如下输出:

输出:[[[2,4]、[1,3]、[1,4]]、[任何其他组合_1]、[任何其它组合_2]、[等等]]

求你了,如果你能提供任何帮助,我将不胜感激。谢谢

这应该有效:

from itertools import combinations
myList = [[2,4], [1,3], [3,5], [1,4]]
combos = [
x for i in range(1, len(myList)+1)
for x in combinations(myList, i)
if sum(list(zip(*x))[0]) == 4 and sum(list(zip(*x))[1]) == 11
]

最新更新