n 개중 r개를 뽑는 경우의 수를 구해야 할 때,
itertoos 모듈의 combinations 기능을 이용하면 간단하게 구현할 수 있다!
from itertools import combinations
일단 요거 import 하고,
삼겹살 먹고싶으니까 같이 먹을 재료들을 담은 리스트 test를 만들고,
자취생이라 여유가 없으니 4개 정도만 골라서 먹는다고 해보자.
test = ["마늘","쌈장","와사비","깻잎","상추","소금","쌈무"]
com = list(combinations(test,4))
for i in com:
print(i)
combinations를 사용해 test 중 4개를 조합한 경우의 수를 리스트 com에 담고 하나씩 출력하면
출력결과
('마늘', '쌈장', '와사비', '깻잎')
('마늘', '쌈장', '와사비', '상추')
('마늘', '쌈장', '와사비', '소금')
('마늘', '쌈장', '와사비', '쌈무')
('마늘', '쌈장', '깻잎', '상추')
('마늘', '쌈장', '깻잎', '소금')
('마늘', '쌈장', '깻잎', '쌈무')
('마늘', '쌈장', '상추', '소금')
('마늘', '쌈장', '상추', '쌈무')
('마늘', '쌈장', '소금', '쌈무')
('마늘', '와사비', '깻잎', '상추')
('마늘', '와사비', '깻잎', '소금')
('마늘', '와사비', '깻잎', '쌈무')
('마늘', '와사비', '상추', '소금')
('마늘', '와사비', '상추', '쌈무')
('마늘', '와사비', '소금', '쌈무')
('마늘', '깻잎', '상추', '소금')
('마늘', '깻잎', '상추', '쌈무')
('마늘', '깻잎', '소금', '쌈무')
('마늘', '상추', '소금', '쌈무')
('쌈장', '와사비', '깻잎', '상추')
('쌈장', '와사비', '깻잎', '소금')
('쌈장', '와사비', '깻잎', '쌈무')
('쌈장', '와사비', '상추', '소금')
('쌈장', '와사비', '상추', '쌈무')
('쌈장', '와사비', '소금', '쌈무')
('쌈장', '깻잎', '상추', '소금')
('쌈장', '깻잎', '상추', '쌈무')
('쌈장', '깻잎', '소금', '쌈무')
('쌈장', '상추', '소금', '쌈무')
('와사비', '깻잎', '상추', '소금')
('와사비', '깻잎', '상추', '쌈무')
('와사비', '깻잎', '소금', '쌈무')
('와사비', '상추', '소금', '쌈무')
('깻잎', '상추', '소금', '쌈무')
이 외에도 순서를 고려한 경우의 수를 구하려면
combinations 말고 permutations 를 사용할 수 있다.
'개발 > 🎸기타' 카테고리의 다른 글
[eclipse/STS] PMD 사용자 ruleset 설정하기(전자정부프레임워크) (0) | 2024.12.30 |
---|---|
[eclipse/STS] 보안 취약점 검사를 위한 PMD설치 및 실행 (0) | 2024.12.30 |
시간 복잡도란 대체 무엇인가 (2) | 2023.08.28 |
npm install 할 때 --save의 의미는? (1) | 2023.08.21 |