Python 인쇄 컬러 텍스트
이 튜토리얼은 Python으로 인쇄 할 때 컬러 텍스트를 생성하는 방법을 보여줍니다.
입력을 사용하여 명령 줄 콘솔을 조작하는 유일한 방법은 ANSI 이스케이프 코드를 사용하는 것입니다. 이러한 코드는 텍스트 또는 배경색, 커서 설정, 글꼴 및 콘솔 내의 기타 수정 가능한 요소와 같은 콘솔 기능을 조작 할 수 있습니다.
ANSI 이스케이프 코드를 사용하여 Python에서 컬러 텍스트 인쇄
먼저, 작업 할 수있는 색상을 나타내는 몇 가지 ANSI 코드를 제공하는 Python 클래스를 선언 해 보겠습니다.
class bcolors:
OK = "\033[92m" # GREEN
WARNING = "\033[93m" # YELLOW
FAIL = "\033[91m" # RED
RESET = "\033[0m" # RESET COLOR
이 변수 중 3 개는 색상에 대한 실제 ANSI 코드이며 RESET
변수는 색상을 기본값으로 다시 설정하기위한 것입니다.
print()
함수는 명령 줄 콘솔에 문자열 인수를 출력합니다.
print()
의 출력에 색상을 지정하려면 명령 줄 콘솔을 조작 할 수있는 ANSI 코드를 문자열 내에 삽입해야합니다.
bcolors
클래스를 사용하여 서로 다른 색상으로 3 개의 다른 선을 인쇄합니다.
print(bcolors.OK + "File Saved Successfully!" + bcolors.RESET)
print(bcolors.WARNING + "Warning: Are you sure you want to continue?" + bcolors.RESET)
print(bcolors.FAIL + "Unable to delete record." + bcolors.RESET)
반영 할 색상을 문자열에 접두사로 붙이고 다음에print()
를 사용할 때 또는 다음에 터미널을 사용할 때 색상을 기본값으로 재설정하기 위해bcolors.RESET
을 붙입니다.
Python 3를 사용하는 경우 다음과 같이print()
문을 형식화 할 수도 있습니다.
print(f"{bcolors.OK}File Saved Successfully!{bcolors.RESET}")
print(f"{bcolors.WARNING}Warning: Are you sure you want to continue?{bcolors.RESET}")
print(f"{bcolors.FAIL}Unable to delete record.{bcolors.RESET}")
출력:
마지막 줄을 출력 한 후 bcolors.RESET
으로 인해 단말기가 기본 색상으로 재설정됩니다. 줄 끝에 넣지 않으면 터미널 내의 텍스트는print()
에서 설정 한 마지막 색상으로 채색됩니다. 이 경우 빨간색입니다.
colorama
모듈을 사용하여 Python에서 컬러 텍스트 인쇄
ANSI의 문제는 Windows OS에서 제대로 작동하지 않을 수 있으므로 Windows 콘솔에서 작동하도록하려면 해결 방법이 필요하다는 것입니다.
colorama
는 ANSI 이스케이프 코드를 사용하는 Python 모듈입니다. 이 모듈을 사용하면 ANSI가 Windows와 호환 될 수 있습니다. 이 문서에서는 Windows 호환성을 위해 ANSI 코드를 래핑 할 수있는 방법을 설명합니다.
다음은 사용 가능한 colorama
전경색 목록입니다.
BLACK, RED, GREEN, YELLOW, BLUE, MAGENTA, CYAN, WHITE, RESET
또한 모든 현재 ANSI 수정 사항을 재설정하는RESET_ALL
을 포함한 스타일이 있으며Fore.RESET
은 최신 ANSI 만 재설정합니다.
DIM, NORMAL, BRIGHT, RESET_ALL
먼저, 커뮤니티에서 만든 라이브러리 인colorama
를 설치해야합니다. 이 종속성을 설치하기 위해pip
또는anaconda
를 사용할 수 있습니다.
-pip
또는pip3
의 경우
pip install colorama
pip3 install colorama //if you're using python3
anaconda
우
conda install -c anaconda colorama
우리는 몇 가지 색상을 시도해보고 다양한 색상과 스타일의 여러 줄을 출력 할 것입니다. colorama.init()
를 사용하여 이러한 설정이 Windows에서 작동하도록합니다.
import colorama
from colorama import Fore
from colorama import Style
colorama.init()
print(Fore.BLUE + Style.BRIGHT + "This is the color of the sky" + Style.RESET_ALL)
print(Fore.GREEN + "This is the color of grass" + Style.RESET_ALL)
print(Fore.BLUE + Style.DIM + "This is a dimmer version of the sky" + Style.RESET_ALL)
print(Fore.YELLOW + "This is the color of the sun" + Style.RESET_ALL)
출력:
DIM
과BRIGHT
는 같은 색상에 사용할 때 색상의 다른 음영을 출력합니다. RESET_ALL
은 색상을 기본값으로 재설정하여 다른 색상으로 설정하거나 기본값으로 둡니다.
요약하면, 파이썬에서 컬러 텍스트를 인쇄하는 유일한 방법은 ANSI 이스케이프 코드를 사용하는 것입니다. 콘솔이 Python의print()
문의 지침을 이해할 수있는 유일한 방법입니다. print()
내에 실제 이스케이프 코드를 포함하여 수동으로 수행하거나colorama
를 사용하여 ANSI 코드를 더 읽기 쉬운 형식으로 래핑 할 수 있습니다.
ANSI 코드 색상에 대한 더 많은 옵션을 얻고 싶다면이를 제공 할 수있는 많은 리소스가 인터넷에 있습니다. 이 기사는 좋은 시작입니다. ANSI 코드를 사용하여 텍스트 서식 (굵게, 밑줄, 기울임 꼴), 콘솔 배경 변경 등을 할 수도 있습니다.
Skilled in Python, Java, Spring Boot, AngularJS, and Agile Methodologies. Strong engineering professional with a passion for development and always seeking opportunities for personal and career growth. A Technical Writer writing about comprehensive how-to articles, environment set-ups, and technical walkthroughs. Specializes in writing Python, Java, Spring, and SQL articles.
LinkedIn