2017-06-29 3 views
2

リストの可能なすべての値のリストを、繰り返されたリストとともに得る方法を教えてください。リストのすべての組み合わせを繰り返し値で取得する

Iはitertools.combination_with_replacementitertools.permutation試みたが、最初(例えば[3, 2, 1]ように)反転順序を除外し、第二の複数の値を(例えば[3, 3, 1]など)を除外する。

私はこのような何かが必要です。

例:

list = [1, 2, 3] 

results = 
[1, 1, 1] 
[1, 1, 2] 
[1, 1, 3] 
... 
[3, 1, 1] 
[3, 1, 2] 
[3, 1, 3] 
... 

は、私はこれを達成するためPythonで何ができますか? ありがとうございます。

答えて

4

あなたは3に繰り返しを設定し、itertools.productを探しています:

>>> from itertools import product 
>>> lst = [1, 2, 3] 
>>> list(product(lst, repeat=3)) 
[(1, 1, 1), (1, 1, 2), (1, 1, 3), (1, 2, 1), (1, 2, 2), (1, 2, 3), (1, 3, 1), (1, 3, 2), (1, 3, 3), (2, 1, 1), (2, 1, 2), (2, 1, 3), (2, 2, 1), (2, 2, 2), (2, 2, 3), (2, 3, 1), (2, 3, 2), (2, 3, 3), (3, 1, 1), (3, 1, 2), (3, 1, 3), (3, 2, 1), (3, 2, 2), (3, 2, 3), (3, 3, 1), (3, 3, 2), (3, 3, 3)] 
+1

はどうもありがとうございました! –

関連する問題