我从其中生成迭代工具生成器的两个列表如下:
list1 = [1, 2, 3]
list2 = ['a', 'b', 'c']
import itertools
def all_combinations(any_list):
return itertools.chain.from_iterable(
itertools.combinations(any_list, i + 1)
for i in range(len(any_list)))
combinationList1 = all_combinations(list1)
combinationList2 = itertools.combinations(list2, 2)通过下面的代码,我可以找到这些组合:
for j in combinationList1:
print(j)现在我想使combinationList1和combinationList2的所有可能的组合,使期望的输出是: 1,a,b,1,a,c,1,b,c,.,1,2,3,a,b,1,2,3,a,c,1,2,3,b,c。
我无法从迭代工具组合中生成一个列表,因为实际的数据集列表要大得多。有人想过如何使用两个迭代工具的组合吗?
发布于 2019-10-14 13:07:26
for j in itertools.product(combinationList1, combinationList2):
for e in itertools.chain.from_iterable(j):
print(e, end=" ")
print()输出
1 a b
1 a c
1 b c
2 a b
2 a c
2 b c
3 a b
3 a c
3 b c
1 2 a b
1 2 a c
1 2 b c
1 3 a b
1 3 a c
1 3 b c
2 3 a b
2 3 a c
2 3 b c
1 2 3 a b
1 2 3 a c
1 2 3 b c https://stackoverflow.com/questions/58377426
复制相似问题