计算一个包含所有可能的常量分配的列表

时间:2018-10-26 18:55:07

标签: python python-3.x list

我正在开发一个函数func(lvars,lconsts),该函数给出了一个列表,其中包含某个运算符中的所有变量和一个列表 在所有常量处于当前状态的情况下,计算一个列表 并为变量分配了所有可能的常量。

func(['X','Y'],['a','b'])

预期输出:

[{'X':'a','Y':'a'},{'X':'b','Y':'a'},{'X':'a','Y':'b'},{'X':'b','Y':'b'}]

我试图像这样使用itertools:

def func(lvars,lconsts):
    return list(itertools.product(lvars, lconsts))

但不是得到这样的预期输出:

[('X', 'a'), ('X', 'b'), ('Y', 'a'), ('Y', 'b')]

1 个答案:

答案 0 :(得分:0)

如何将其传递给dict()构造函数而不是list()构造函数?

def func(lvars,lconsts):
    return dict(product(lvars, lconsts))