python 中嵌套列表的所有条件排列
All conditional permutations of a nested list in python
我有一个像波纹管 (A) 这样的数组,我想将它转换为 (B)。
A:
A = [['a', 'ae', 'oa'], ['a'], ['l'], ['y', 'i']]
B:
B = ['aaly',
'aali',
'aealy',
'aeali',
'oaaly',
'oaali']
使用:
from itertools import product
A = [['a', 'ae', 'oa'], ['a'], ['l'], ['y', 'i']]
res = ["".join(p) for p in product(*A)]
print(res)
输出
['aaly', 'aali', 'aealy', 'aeali', 'oaaly', 'oaali']
作为替代用途:
res = list(map("".join, product(*A)))
我有一个像波纹管 (A) 这样的数组,我想将它转换为 (B)。
A:
A = [['a', 'ae', 'oa'], ['a'], ['l'], ['y', 'i']]
B:
B = ['aaly',
'aali',
'aealy',
'aeali',
'oaaly',
'oaali']
使用:
from itertools import product
A = [['a', 'ae', 'oa'], ['a'], ['l'], ['y', 'i']]
res = ["".join(p) for p in product(*A)]
print(res)
输出
['aaly', 'aali', 'aealy', 'aeali', 'oaaly', 'oaali']
作为替代用途:
res = list(map("".join, product(*A)))