2017-10-12 13 views
0

配列の内容とインデックスの組み合わせを探したいと思います。また、動的な組み合わせの長さ。今すぐインデックスと返すことなくこれを組み合わせることができます:Python Itertoolsの組み合わせ

print("Combination result: ") 
for L in range(1, len(splitword)+1): 
    comb = combinations(splitword, L) 
    for combine in comb: 
     print(combine) 

どのようにしてインデックスと一緒にインデックスを返すことができますか?

おかげ

答えて

0

は、インデックスを見つけるために、代わりにcombinations(range(len(splitword)), L)を使用してください。そこから値を見つけるのは簡単なインデックス作成です。

print("Combination result: ") 
for L in range(1, len(splitword)+1): 
    comb = itertools.combinations(range(len(splitword)), L) 
    for combination_index in comb: 
     print(combination_index, [splitword[i] for i in combination_index]) 
+0

うわー、素晴らしい!ありがとう、私はあなたのコードを今すぐ学んでいます、私はitertoolsで初心者です、あなたは私に上記のことについて少し説明できますか? –

+0

私がしたことは '' itertools''とは関係ありません。あなたの文字列の文字の組み合わせを生成するのではなく、0から '' len(splitword) ''の数字までの ''範囲 ''をシャッフルしただけです。これは、値そのものではなく、インデックスを並べ替えることになります。 – polwel

関連する問題