Python-シーケンス、組合せ関数


シーケンスを書かずに組合せ関数が解け、これらの関数でシーケンスと組合せを作成するのは非常に簡単で、短く書いても解くことができることに気づいた.実際,これらの関数は賢い人によって設計され,複雑な図形においても有利な場合が多い.
シーケンス、組合せ関数の使用方法
from itertools import permutations # 순열함수 import
from itertools import combinations # 조합함수 import

a=[1,2,3,4] # 먼저 순열, 조합으로 만들 리스트를 만들어준다.
a_com=[]
a_per=[]

for j in list(permutations(a,2)): # a에서 2개를 뽑아 순열을 만든다.
    a_per.append(j)
for i in list(combinations(a,2)): # a에서 2개를 뽑아 조합을 만든다.
    a_com.append(i)

print("a_per",a_per)
print("a_com",a_com)

その結果,ソートと組合せの違いが分かる.
(1,2)の場合、シーケンスにおいて(2,1)は異なるものとみなされるが、組合せにおいては既に(2,1)存在しているものとみなされ、単独では現れない.
つまり、要素の順序によって値を変えて、順序によって、値が変わらなければ、組み合わせを使うことができます!