꾸준히 기록하자

[Python] permutations 본문

IT/Python

[Python] permutations

seungwonlee 2022. 12. 7. 10:12
728x90

순열(Permutation)에 대해 간략하게 알아보도록 하겠습니다.

 

순열서로 다른 n개의 물건들 중 r개를 뽑아 순서가 있게 나열한 것이며 기호nPr와 같이 나타내고 중복은 가능합니다.

 

nPr의 팩토리얼을 이용한 계산 n!/(n-r)!입니다.

4개의 물건 중에 2개를 뽑은 경우의 수는 12입니다.

nPr = 4!/(4-2)! 즉 4 x 3 x 2 x 1 / 2 x 1로 24 / 2 = 12

* 0! 은 1입니다.

 

1. 아래 코드 블록 itertools 라이브러리를 사용하여 작성한 코드입니다.

from itertools import permutations

test_list = ['A', 'B', 'C', 'D']

result = list(permutations(test_list, 2))
print(result)
# 결과: [('A', 'B'), ('A', 'C'), ('A', 'D'), ('B', 'A'), ('B', 'C'), ('B', 'D'), ('C', 'A'), ('C', 'B'), ('C', 'D'), ('D', 'A'), ('D', 'B'), ('D', 'C')]
print(len(result))
# 결과: 12

순열에서는 ('A', 'B')와 ('B', 'A')는 다른 것으로 봅니다.

 

순열에 대해 간략하게 알아보았습니다.

 

끝.

반응형

'IT > Python' 카테고리의 다른 글

[Python] find()  (0) 2023.01.26
[Python] combinations  (0) 2022.12.28
[Python] Counter()  (0) 2022.12.06
[Python] Built-in Functions  (0) 2022.12.01
[Python] lambda  (0) 2022.11.22
Comments