본문 바로가기
SEO's Study/프로페셔널한 이야기

[python 라이브러리] tqdm 프로세스바 활용하기

by 신SEO세오 2022. 5. 25.
반응형

작업을 하다보면 여러 데이터를 한 번에 처리해야할 때가 많은데

무작정 실행시켜놓고 기다리자니 언제 끝날지 모르겠고, 모든 로그를 찍자니 너무 많이 찍혀서 볼 수 없고..

이 때 활용하기 좋은 진행률 프로세스 바가 있어서 메모해두려고 한다

 

이 라이브러리 하나로 내 의도를 파악할 수 있고 진행률을 확인 할 수 있으니 일석이조의 효과를 누리는 셈

from tqdm import tqdm
# tqdm은 아랍어로 taqadum라는 porgress(진행)의 의미를 가지고 있다
# 이 라이브러리를 활용하면 현재 실행 중인 프로그램의 진행률을 파악하기에 용이하다

 

간단한 예시를 들어 설명해보면

0~100000 까지의 수를 반복하는 상황이 생겼다고 했을때 작업량에 따라 소요시간이 달라질 수 있다

이 때 기약없이 기다리는게 싫다면 결과를 프린트하여 확인할 수 있는데, 무지성으로 프린트 되는걸 볼 수 있을거다

이 과정이 보기 싫어서 이전엔 프린트 없이 그냥 돌려놓고 다른걸 하곤 했는데, tqdm이란 신문물을 만나버렸다

결과를 프린트하지않으니 0.1초밖에 안걸려서 캡처시간도 안준다

이 예제 코드는 복잡하지 않으니 5.3초에서 0.1초로 줄어들었지만, 복잡한 코드는 시간도 많이 단축해줄 것 같다

이제 나를 포함한 모두가 새로운 라이브러리를 활용해 좀 더 간편한 코딩을 할 수 있기를 바란다

 

from tqdm import tqdm

N = 100000
for i in tqdm(range(0, N)) : 
    # print("over" if i % 100 == 0 else 'yes')
    continue

 

아, 꼭 range의 형태로만 tqdm을 활용할 수 있는건 아니고 다양한 자료형 데이터에도 사용할 수 있다

iterable하기만하면 되니 꼭 잊지않고 활용해봐야겠다

참고 : github-tqdm(https://github.com/tqdm/tqdm#usage)

 

 

 

 

반응형

댓글