在每个决策中给定多个选择的所有可能的决策路径 /结果

问题描述 投票:0回答:1
a = [3,19,13] b = [20,18,7]

示例输出1:

[[3, 19, 13], [3, 19, 7], [3, 18, 13], [3, 18, 7], [20, 19, 13], [20, 19, 7], [20, 18, 13], [20, 18, 7]]
示例输入2:

a = ['A','B'] b = ['C','D']
示例输出2:

[['A', 'B'], ['A', 'D'], ['C', 'B'], ['C', 'D']]
我正在努力寻找正确的数学术语来确切定义我的要求。我认为排列,组合或笛卡尔产品不够正确或足够精确。
    

您可以通过获取列表n'ter条款集的产品来计算这一点。每个集合都包含新列表的n'th元素的所有选择,因此所有集合的产品将是这些选择的所有可能组合。
实施方面,您可以使用
zip

将“集合”收集到列表中,然后

itertools.product
python algorithm math
1个回答
0
投票
albums

SetLists

Sets/listss.

import itertools

def get_paths(*iterables):
    return list(itertools.product(*zip(*iterables)))

a = [3,19,13]
b = [20,18,7]

print(get_paths(a, b))

a = ['A','B']
b = ['C','D']

print(get_paths(a, b))
	
© www.soinside.com 2019 - 2025. All rights reserved.