-
Python tqdm이란?Python/etc 2022. 10. 6. 11:00728x90반응형
목차
tqdm이란?
tqdm아랍어(taqadum)의 "진행"을 의미하고 스페인어(te quiero demasiado)의 "I love you so much"의 약어이다.
루프에 스마트 진행률 측정기가 표시되도록 즉시 반복 가능 항목으로 래핑하면 tqdm(iterable)이 완료된다.
from tqdm import tqdm for i in tqdm(range(10000)): ...
파이프가 있는 모듈로 실행할 수도 있다.
오버헤드는 낮으며, 반복당 약 60ns(의 경우 80ns tqdm_gui)이며 성능 회귀에 대해 단위 테스트를 거쳤습니다. 이에 비해 잘 정립된 ProgressBar는 800ns/iter 오버헤드를 가지고 있다.
낮은 오버헤드 외에도 tqdm 스마트 알고리즘을 사용하여 남은 시간을 예측하고 불필요한 반복 표시를 건너 뛰므로 대부분의 경우 오버헤드를 무시할 수 있다.
tqdm 파라미터 설명
- iterable : 반복자 객체
- desc : 진행바 앞에 텍스트 출력
- total : int, 전체 반복량
- leave : bool, default로 True. (진행상태 잔상이 남음)
- ncols : 진행바 컬럼길이. width 값으로 pixel 단위로 보인다.
- mininterval, maxinterval : 업데이트 주기. default는 mininterval = 0.1sec. maxinterval=10sec
- miniters : Minimum progress display update interval, in iterations.
- ascii : True로 하면 '#'문자로 진행바가 표시됨.
- initial : 진행 시작값. 기본은 0
- bar_format : str
- 전체 작업량을 알고 있고, 처리된 양으로 진행바를 표시할 경우에, update()로 진행량 추가
메소드
- clear() : 삭제
- refresh() : 강제 갱신
trange(i)
trange(i)는 특별한 최적화 인스턴스다. tqdm(range(i))와 같은 기능을 한다.
loop 밖에서 수동 tqdm 인스턴스 선언이 허용된다.
Manual
with구문을 사용하여 tqdm을 수동으로 컨트롤한다. update()를 사용하여 수동으로 진행률을 증가 시킬 수 있다.
optional total이 제공되면, 예상되는 현재 상태가 디스플레이 된다.
with적용하는 것도 옵션중 하나이다.
tqdm함수만을 변수에 할당할 수도 있는데, 이렇게 쓰는 경우에는 끝에 del이나 close하는 것을 잊으면 안된다.
반응형'Python > etc' 카테고리의 다른 글
Python String strip(), rstrip(), lstrip() (0) 2022.10.11 Python parquet 타입으로 읽기, 쓰기 (0) 2022.10.06