[TIL] Python #10 itertools의 활용법

김성진·2020년 7월 31일
0
post-thumbnail

파이썬에서는 itertools.permutation을 이용해 for문을 생략하고 순열 구현 가능.

예) 'A', 'B', 'C'로 만들 수 있는 경우의 수 -> 'ABC', 'ACB', 'BAC', 'BCA', 'CAB', 'CBA'

import itertools

pool = ['A', 'B', 'C']
print(list(map(''.join, itertools.permutations(pool)))) # 3개의 원소로 수열 만들기
print(list(map(''.join, itertools.permutations(pool, 2)))) # 2개의 원소로 수열 만들기

  • 위와 같은 방법으로 for문을 활용한 반복문을 생략할 수 있다.

permutations = 순열, combinations = 조합

import itertools

pool = ['A', 'B', 'C']
p = itertools.permutations(pool, 2) #순열
c = itertools.combinations(pool, 2) #조합
print(list(p))
print(list(c))

출력값:
순열: [('A', 'B'), ('A', 'C'), ('B', 'A'), ('B', 'C'), ('C', 'A'), ('C', 'B')]
조합: [('A', 'B'), ('A', 'C'), ('B', 'C')]

profile
multi-national communicator with programming (back-end)

0개의 댓글