배우고 느끼고 생각하고 사랑하라

그리고 즐겨라

코딩 잡동사니/코딩 꿀팁

[Python 꿀팁] tqdm

gyubinc 2023. 1. 24. 20:06

반복문을 작성하다 보면 현재 진행률이 어느정도인지 궁금할 때가 있다

 

아래의 무의미한 3중반복문 코드를 예시로 보자

 

data = list()

for i in range(10000):
  for j in range(1000):
    for k in range(1000):
      data.append(k)

 

가장 먼저 떠오르는 방법은 아래와 같다

data = list()

for i in range(10000):
  if i%10 == 0:
    print(f'현재 진행률은 {(i/10000)*100}%입니다.')
  for j in range(1000):
    for k in range(1000):
      data.append(k)

나름 유의미해 보이긴 하지만 추가적으로 시간을 측정하기 위해서는 별도의 time 모듈을 사용해야하기에 추가적인 번거로움이 생겨난다.

 

이 때, 사용할 수 있는 강력하고 간단한 방법은 아래와 같다.

 

from tqdm import tqdm

data = list()

for i in tqdm(range(10000)):
  for j in range(1000):
    for k in range(1000):
      data.append(k)

 

tqdm 모듈은 다음과 같이 현재 진행상황을 progress bar를 통해 알려주며 추가적으로 예상 시간까지 주는 유용한 메소드를 가지고 있다.