반복 프로세스를 위한 간단한 시각적 피드백을 제공하는 미니멀한 진행 스피너로, 일반 모드와 심플 모드, 확대 모드를 지원하는 라이브러리를 만들어 보았다.
이 라이브러리의 이름은 rennips라고 지었는데, 스피너의 영어 스펠링을 뒤집어보니 그럴듯한 이름이 만들어져서 그냥 지었다.
이미 현재 0.2.0 버전까지 업데이트하였으며 PyPI에서 rennips 라이브러리를 설치할 수 있다.
pip install rennips
라이브러리 설치 후 rennips를 사용하는 예제 코드:
import time
import argparse
from rennips import rennips
parser = argparse.ArgumentParser(description="rennips 모드 선택기")
mode_group = parser.add_mutually_exclusive_group()
mode_group.add_argument("-n", "--normal", action="store_true", help="일반 모드로 실행")
mode_group.add_argument("-s", "--simple", action="store_true", help="심플 모드로 실행")
mode_group.add_argument("-b", "--big", action="store_true", help="큰 모드로 실행")
args = parser.parse_args()
if args.simple:
mode = "simple"
elif args.big:
mode = "big"
else:
mode = "normal"
data = [x for x in range(50)]
for i in rennips(data, desc="카운팅 중...", mode=mode):
time.sleep(0.05)
- normal 모드
- simple 모드
- big 모드 (변경 예정)
* 반짝거림 주의!!!
특징
- 단순한 스피너 애니메이션 (|, /, -, \)
- 진행률 표시
- 항목 개수, 경과 시간 표시 (normal 모드)
- 모든 반복 가능한 객체와 호환
- 길이를 알 수 없는 반복 가능한 객체 지원
OOHYO - Brave
Is it true that even these can turn to gold?
반응형