반응형
1.sequence type의 * 연산
다른 언어에서는..(또는 이 기능을 모르시는 분은)
보통 사람들은 for 문을 이용해 기존 스트링에 'abc'를 여러 번 붙이는 번거로운 일을 하지요. 이렇게요!
answer = ''
n = 반복수
for _ in range(n):
answer += 'abc'
파이썬에서는 *연산자를 사용해 코드를 획기적으로 줄일 수 있습니다.
n = 반복수
answer = 'abc' * n
2. 곱집합(Cartesian product) 구하기 - product
다른 언어에서는..(또는 이 기능을 모르시는 분은)
보통 사람들은 for 문을 이용해 두 iterable의 원소를 하나씩 곱해갑니다.
iterable1 = 'ABCD'
iterable2 = 'xy'
iterable3 = '1234'
for value1 in iterable1:
for value2 in iterable2:
for value3 in iterable3:
print(value1, value2, value3)
itertools.product를 이용하면, for 문을 사용하지 않고도 곱집합을 구할 수 있습니다.
import itertools
iterable1 = 'ABCD'
iterable2 = 'xy'
iterable3 = '1234'
print(list(itertools.product(iterable1, iterable2, iterable3)))
반응형
'Another-Develop > Python' 카테고리의 다른 글
05 파이썬 - collections.Counter, 2차원 리스트 -> 1차원 리스트 : - from_iterable, 순열 : permutations (0) | 2021.06.07 |
---|---|
03 파이썬 - zip, map, join (0) | 2021.04.22 |
02 파이썬 - 알파벳 모듈, sorted (0) | 2021.04.16 |
01 파이썬 - divmod, 10진법 변환, 문자열 정렬 (0) | 2021.04.15 |
파이썬 연습장 (0) | 2021.04.14 |