2016-12-10 28 views
0

私は約12のリスト[a, b, c, ... , z]と任意の要素を持っており、元のリストのそれぞれと一致する組み合わせのリストをもたらすitertools.combinations(iterable, n)によって一連の組み合わせが得られます。各組み合わせのリストの1つの要素の組み合わせ

現在、すべての可能な組み合わせでリストを取得し、各組み合わせリストの1つの要素(組み合わせ)を選択することが大事です。

一つ簡略exempleは次のようになります。

A = [a,b,c] 
B = [d,e,f] 
C = [g,h,i] 

my_iterable = [A, B, C] 

、出力は次のようになります。

>>> foo(my_iterable) 
(a,d,g), (a,d,h), (a,d,i), (a,e,g), (a,e,h), ... , (c,f,i) 

入力イテレート可能オブジェクト、例えば'A、B & C'は可変長であり、foo()はジェネレータ関数であってもよい。

+0

[('a', 'd', 'g'), ('a', 'd', 'h'), ('a', 'd', 'i'), ('a', 'e', 'g'), ('a', 'e', 'h'), ('a', 'e', 'i'), ('a', 'f', 'g'), ('a', 'f', 'h'), ('a', 'f', 'i'), ('b', 'd', 'g'), ('b', 'd', 'h'), ('b', 'd', 'i'), ('b', 'e', 'g'), ('b', 'e', 'h'), ('b', 'e', 'i'), ('b', 'f', 'g'), ('b', 'f', 'h'), ('b', 'f', 'i'), ('c', 'd', 'g'), ('c', 'd', 'h'), ('c', 'd', 'i'), ('c', 'e', 'g'), ('c', 'e', 'h'), ('c', 'e', 'i'), ('c', 'f', 'g'), ('c', 'f', 'h'), ('c', 'f', 'i')] 
'あなた例えばitertools.product(A、B、C)' – ayhan

答えて

0
A = ['a','b','c'] 
B = ['d','e','f'] 
C = ['g','h','i'] 

l = [(a, b, c) for a in A for b in B for c in C] 
print(l) 

アウト:

関連する問題