【问题标题】:Compute a list with all possible assignments of constants to variables [duplicate]计算一个列表,其中包含所有可能的常量分配给变量[重复]
【发布时间】:2019-03-31 13:43:11
【问题描述】:

我正在开发一个函数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')]

【问题讨论】:

标签: python python-3.x list


【解决方案1】:

将它传递给 dict() 构造函数而不是 list() 构造函数怎么样?

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

【讨论】:

  • 好吧,对于初学者来说,这将产生一个dict,但操作员想要一个list
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-04-07
  • 2020-02-28
  • 2018-11-05
  • 2021-05-24
  • 1970-01-01
相关资源
最近更新 更多