반응형

rich 모듈은 터미널에 이쁜 텍스트를 렌더링하기 위한 파이썬 라이브러리입니다. 이 문서에서는 이 라이브러리를 사용하는 방법에 대해 설명하고 있습니다.

rich 모듈을 사용하면 터미널에서 색상, 스타일, 테이블, 프로그레스 바 등 다양한 요소를 추가할 수 있습니다. 이를 통해 터미널에서 보여지는 결과물을 더욱 풍부하게 만들 수 있습니다.

예를 들어, 다음과 같은 코드를 작성하여 스타일을 추가할 수 있습니다:

from rich.console import Console
from rich.panel import Panel

console = Console()

panel = Panel("Hello, Rich!", style="bold magenta")
console.print(panel)

위 코드를 실행하면 "Hello, Rich!"라는 문구가 볼드체와 마젠타색으로 출력됩니다.

이 외에도 rich 모듈의 다양한 기능을 소개하고 있으니, 참고하시기 바랍니다.

 

rich 모듈 설치하기


rich 모듈을 프로젝트에 적용하기 위해서는 pip 명령어로 간단히 설치하면 됩니다.

  • pip 설치 명령어
pip3 install rich

  • pip 설치 결과 확인
    • 테스트 코드를 한번 돌려봅시다. 아래 코드를 한번 실행해보세요
from rich import print
print("Hello, [bold magenta]World[/bold magenta]!", ":vampire:", locals())

rich 모듈 기능 


색깔 다양하게 (이쁘게) 출력하기

파이썬의  print 기본 함수 대신 console.print 함수를 사용하면, rich 모듈이 지원하는 다양한 스타일 옵션을 활용하여 텍스트를 출력할 수 있습니다. 예를 들어, style 옵션을 사용하여 텍스트의 색깔, 굵기, 밑줄 등을 조절할 수 있습니다. 또한 justify 옵션을 사용하여 텍스트를 가운데, 왼쪽, 오른쪽으로 정렬할 수 있습니다.

from rich.console import Console

console = Console()
console.print("밑줄 + 글자 굵게 빨갛게 출력!", style="bold underline red")
console.print("가운데 정렬", justify="left", style="bold")
console.print("왼쪽 정렬", justify="center", style="bold")
console.print("오른쪽 정렬", justify="right", style="bold")

현재 데이터를 이쁘게 출력하기

from rich.console import Console
console = Console()

test_data = [
    {"jsonrpc": "2.0", "method": "sum", "params": [None, 1, 2, 4, False, True], "id": "1",},
    {"jsonrpc": "2.0", "method": "notify_hello", "params": [7]},
    {"jsonrpc": "2.0", "method": "subtract", "params": [42, 23], "id": "2"},
]

def test_log():
    enabled = False
    context = {
        "foo": "bar",
    }
    movies = ["Deadpool", "Rise of the Skywalker"]
    console.log("Hello from", console, "!")
    console.log(test_data, log_locals=True)


test_log()

ProgressBar 기능 사용하기

ProgressBar는 작업의 진행 상태를 시각적으로 보여주는 UI 요소입니다. 이 기능을 사용하면 사용자는 앱에서 수행 중인 작업에 대한 진행 상황을 쉽게 파악할 수 있습니다. ProgressBar는 일반적으로 파일 다운로드, 데이터 처리 또는 네트워크 요청과 같은 장기 실행 작업에서 사용됩니다.

Rich 모듈에서 해당 기능을 제공하기 때문에 쉽게 사용할 수 있습니다.

from rich.progress import track
import time


for step in track(range(100)):
  time.sleep(1)

 

 

마무리 정리


rich 모듈은 터미널에서 보다 이쁜 콘솔 UI를 구현하는 데 유용한 다양한 기능을 제공합니다. 이를 통해 더욱 보기 좋은 화면을 구성할 수 있습니다. 또한, rich 모듈은 다양한 출력 포맷을 지원합니다. 예를 들어, Markdown, HTML, CSV 등과 같은 포맷으로 출력을 할 수 있습니다.

Rich 모듈은 데이터 시각화를 위한 다양한 기능을 제공합니다. 예를 들어, 표나 그래프를 터미널에서 출력할 수 있습니다. 이를 통해, 보다 쉽게 데이터를 이해할 수 있습니다. 또한, rich 모듈은 다양한 테마를 제공합니다. 따라서, 사용자는 자신에게 적합한 테마를 선택하여 사용할 수 있습니다.

이상으로 rich 모듈에 대한 간략한 소개를 마치겠습니다. 이 모듈은 파이썬 개발자들에게 매우 유용한 도구입니다. 특히, 터미널에서 더욱 멋진 콘솔 UI를 구현하고자 하는 경우에는 꼭 사용해보시길 추천합니다.

반응형
복사했습니다!