I. 概要
Python の itertoolsモジュールの 組み合わせ ( iterable, r )は主にイテレーターを作成し、次数r のすべてのサブシーケンスをiterableに返します。返されたサブシーケンス内の項目は、入力された iterable の順序でソートされます。
2. 例
(1) リスト上の組み合わせを並べて設定する
from itertools import combinations
b = [1,2,3,4] #对列表进行combinations排列组合
for j in combinations(b,2):
print (''.join('%d'%o for o in j))
print ('**********')
出力結果:
(2) 文字列を並べて結合する
from itertools import combinations
a = 'abcd' #对字符串进行combinations排列组合
for i in combinations(a,2):
x = ''.join(i)
print (x,end=' ')
print ("\n***********")
出力結果:
(3) タプルを並べて結合する
from itertools import combinations
c = ('e','f','g','h') #对元组进行combinations排列组合
for j in combinations(c,2):
print (j)
print ('**********')
出力結果:
(4)辞書の整理・結合
from itertools import combinations
e = {'青鸟':'最美','萧风':'最帅'} #对字典进行combinations排列组合
for i in combinations(e,2):
print ('配'.join('%s'%s for s in i),end=",绝!")
print ('\n****************')
出力結果:
注: 組み合わせ機能は、辞書のキーを配置して組み合わせるだけです。
(5) セットを並べて組み合わせる
from itertools import combinations
x = {'a','b','c','d'} #对集合进行combinations排列组合
for i in combinations(x,2):
print (i)
print ('**********')
出力結果:
3. テスト
from itertools import combinations
y = {'a','a','a','b'}
for i in combinations(y,2):
print (''.join('%s'%p for p in i))
出力結果: