问题定义:
我有一个字典,其中N > 0
参数列表作为值,参数名称作为键。
每个列表的长度可能不同(例如,k > 0, l > 0, m > 0...
)。
我的目标是生成一个统一的元组列表[(a11, a21, a31, ...), (a12, a22, a32, ...), ..., (a1k, a2l, a3m, ...)]
,其中每个元组都是一组长度N
,并包含相应的参数值。
例子:
给定以下参数字典:
const_params_dict= dict(a=[-1, 1], b=[-5, -4, -3, -2, -1, 1, 2, 3, 4, 5], th=[0.5])
所需的输出将是:
Out: [(-1, -5, 0.5), (-1, -4, 0.5), (-1, -3, 0.5), (-1, -2, 0.5), ..., (-1, 5, 0.5), (1, -5, 0.5), (1, -4, 0.5), (1, -3, 0.5), (1, -3, 0.5) , ..., (1, 5, 0.5)]
列表已知值的解决方案(即 known N
):
对于已知的 值,我可以想出一种方法来解决这个问题N
,如下所示Code 1
代码 1:
[(a, b, th) for a in const_params_dict['a'] for b in const_params_dict['b'] for th in const_params_dict['th']]
结果是:
[(-1, -5, 0.5),
(-1, -4, 0.5),
(-1, -3, 0.5),
(-1, -2, 0.5),
(-1, -1, 0.5),
(-1, 1, 0.5),
(-1, 2, 0.5),
(-1, 3, 0.5),
(-1, 4, 0.5),
(-1, 5, 0.5),
(1, -5, 0.5),
(1, -4, 0.5),
(1, -3, 0.5),
(1, -2, 0.5),
(1, -1, 0.5),
(1, 1, 0.5),
(1, 2, 0.5),
(1, 3, 0.5),
(1, 4, 0.5),
(1, 5, 0.5)]
我的问题:
N我怎样才能以最优雅和最有效的方式将此解决方案概括为任意值?
慕莱坞森
相关分类