순서가 있는 집합에서 원소들을 특정한 순서로 늘어놓은 것.
from itertools import permutations
items = [1, 2, 3]
for perm in permutations(items, 3):
print(perm)
(1, 2, 3)
(1, 3, 2)
(2, 1, 3)
(2, 3, 1)
(3, 1, 2)
(3, 2, 1)
조합(combination)은 주어진 집합에서 일부 원소를 선택하여 만들어지는 부분집합. 이때 순서는 중요하지 않습니다
items = [1, 2, 3]
for combo in combinations(items, 2):
print(combo)
(1, 2)
(1, 3)
(2, 3)
items = [1, 2, 3]
for perm in product(items, repeat=2):
print(perm)
(1, 1)
(1, 2)
(1, 3)
(2, 1)
(2, 2)
(2, 3)
(3, 1)
(3, 2)
(3, 3)
items = [1, 2, 3]
for combo in combinations_with_replacement(items, 2):
print(combo)
(1, 1)
(1, 2)
(1, 3)
(2, 2)
(2, 3)
(3, 3)