728x90
반응형
파이썬을 사용할 때 컴프리핸션을 이용하면 for문을 이용하는 것보다 좀 더 간결하게 코드를 작성할 수 있는 장점이 있다. 그런데, 코드의 간결화에 더불어 똑같은 코드를 동작시킬 때, 컴프리핸션이 for문 보다 대략적으로 2/3의 속도가 더 빠르다.
아래 예시를 보자. 아래 코드의 속도를 주피터에서 %%timeit 을 통해 셀 안의 코드 동작속도를 측정할 수가 있다.
ls = []
for num in range(1, 10001):
ls.append(num)
len(ls)
더보기
<측정결과>
540 µs ± 2.77 µs per loop (mean ± std. dev. of 7 runs, 1000 loops each)
다음은 컴프리핸션으로 코드를 작성하고 속도를 측정해 보았다.
ls = [num for num in range(1, 10001)]
len(ls)
더보기
<측정결과>
310 µs ± 7 µs per loop (mean ± std. dev. of 7 runs, 1000 loops each)
결론 : 컴프리핸션에 익숙해 지자!
728x90
반응형
'Study > FastCampus' 카테고리의 다른 글
[python] map(), filter(), reduce() 구현 (0) | 2021.05.17 |
---|---|
[python] Decolator - ① (0) | 2021.05.06 |
[python] Map(), Filter(), reduce() (0) | 2021.05.04 |
[python] 함수 default 파라미터 (0) | 2021.05.03 |
[python] 구구단 프로그램(for문) (0) | 2021.05.03 |