我在制作像
这样的列表时遇到了麻烦[['G', 'U'], ['G', 'U'], 'R', 'G']
进入所有可能的组合,如下所示
[['G', 'G', 'R', 'G'],
['G', 'U', 'R', 'G'],
['U', 'G', 'R', 'G'],
['U', 'U', 'R', 'G']]
在Python中。我该怎么做呢?
答案 0 :(得分:1)
您可以使用itertools.product()
:
lst = [['G', 'U'], ['G', 'U'], 'R', 'G']
from itertools import product
[x for x in product(*lst)]
#[('G', 'G', 'R', 'G'),
# ('G', 'U', 'R', 'G'),
# ('U', 'G', 'R', 'G'),
# ('U', 'U', 'R', 'G')]
答案 1 :(得分:0)
您可以使用itertools.product
轻松完成此操作。它完全符合您的描述。
>> import itertools
>> l = [['G', 'U'], ['G', 'U'], 'R', 'G']
>> i = itertools.product(*l)
>> list(i)
[('G', 'G', 'R', 'G'), ('G', 'U', 'R', 'G'), ('U', 'G', 'R', 'G'), ('U', 'U', 'R', 'G')]