Python 터미널에서 색상 인쇄
이 기사에서는 다음 내용을 다룰 것입니다. Python에서 컬러 텍스트를 인쇄하는 방법 몇 m을 사용하여 터미널에 컬러 텍스트를 출력하는 방법 파이썬에서.
이를 수행하는 가장 일반적인 방법은 다음을 사용하는 것입니다.
- colorama 모듈 사용하기 Python에서 ANSI 코드 사용하기 termcolor 모듈 사용하기
방법 1: colorama 모듈을 사용하여 컬러 텍스트 인쇄
컬러라마 모듈 는 그런 다음 ANSI 이스케이프 시퀀스에 대한 Colorama의 상수 약어를 사용하여 컬러 텍스트를 플랫폼 간 인쇄할 수 있습니다.
예시 1: 녹색 배경에 빨간색 텍스트를 인쇄하는 Python 프로그램입니다.
파이썬3
from> colorama> import> Fore, Back, Style> print> (Fore.RED> +> 'some red text'> )> print> (Back.GREEN> +> 'and with a green background'> )> print> (Style.DIM> +> 'and in dim text'> )> print> (Style.RESET_ALL)> print> (> 'back to normal now'> )> |
산출:
예시 2: 빨간색 배경에 녹색 텍스트를 인쇄하는 Python 프로그램입니다.
파이썬3
from> colorama> import> init> from> termcolor> import> colored> init()> print> (colored(> 'Hello, World!'> ,> 'green'> ,> 'on_red'> ))> |
산출:
방법 2: termcolor 모듈을 사용하여 컬러 텍스트 인쇄
용어 색상 모듈 터미널 출력을 위한 ANSII 색상 형식 지정을 위한 Python 모듈입니다.
예: 컬러 텍스트와 배경을 인쇄하는 Python 프로그램입니다.
파이썬3
import> sys> from> termcolor> import> colored, cprint> text> => colored(> 'Hello, World!'> ,> 'red'> , attrs> => [> 'reverse'> ,> 'blink'> ])> print> (text)> cprint(> 'Hello, World!'> ,> 'green'> ,> 'on_red'> )> def> print_red_on_cyan(x):> return> cprint(x,> 'red'> ,> 'on_cyan'> )> print_red_on_cyan(> 'Hello, World!'> )> print_red_on_cyan(> 'Hello, Universe!'> )> for> i> in> range> (> 10> ):> > cprint(i,> 'magenta'> , end> => ' '> )> cprint(> 'Attention!'> ,> 'red'> , attrs> => [> 'bold'> ],> file> => sys.stderr)> |
산출:
방법 3: Python에서 ANSI 코드를 사용하여 컬러 텍스트 인쇄
컬러 텍스트를 인쇄하는 가장 일반적인 방법은 인쇄하는 것입니다. ANSI 이스케이프 시퀀스 곧장. 이는 다음과 같은 다양한 형식으로 제공될 수 있습니다.
예시 1: 호출할 함수 빌드
관련 ANSI 이스케이프 시퀀스를 실행하기 위해 특정 색상 이름의 함수를 호출하는 함수를 작성할 수 있습니다. 아래는 컬러 텍스트와 배경을 인쇄하는 Python 프로그램입니다.
파이썬3
def> prRed(skk):> print> (> ' 33[91m {} 33[00m'> .> format> (skk))> def> prGreen(skk):> print> (> ' 33[92m {} 33[00m'> .> format> (skk))> def> prYellow(skk):> print> (> ' 33[93m {} 33[00m'> .> format> (skk))> def> prLightPurple(skk):> print> (> ' 33[94m {} 33[00m'> .> format> (skk))> def> prPurple(skk):> print> (> ' 33[95m {} 33[00m'> .> format> (skk))> def> prCyan(skk):> print> (> ' 33[96m {} 33[00m'> .> format> (skk))> def> prLightGray(skk):> print> (> ' 33[97m {} 33[00m'> .> format> (skk))> def> prBlack(skk):> print> (> ' 33[98m {} 33[00m'> .> format> (skk))> prCyan(> 'Hello World, '> )> prYellow(> 'It's'> )> prGreen(> 'Geeks'> )> prRed(> 'For'> )> prGreen(> 'Geeks'> )> |
산출:
예시 2: 색상 클래스 구축
배경색과 전경색을 할당하는 클래스를 만들고 호출합니다. 아래는 컬러 텍스트와 배경을 인쇄하는 Python 프로그램입니다.
파이썬3
class> colors:> '''Colors class:reset all colors with colors.reset; two> sub classes fg for foreground> and bg for background; use as colors.subclass.colorname.> i.e. colors.fg.red or colors.bg.greenalso, the generic bold, disable,> underline, reverse, strike through,> and invisible work with the main class i.e. colors.bold'''> reset> => ' 33[0m'> bold> => ' 33[01m'> disable> => ' 33[02m'> underline> => ' 33[04m'> reverse> => ' 33[07m'> > strikethrough> => ' 33[09m'> > invisible> => ' 33[08m'> > class> fg:> > black> => ' 33[30m'> > red> => ' 33[31m'> > green> => ' 33[32m'> > orange> => ' 33[33m'> > blue> => ' 33[34m'> > purple> => ' 33[35m'> > cyan> => ' 33[36m'> > lightgrey> => ' 33[37m'> > darkgrey> => ' 33[90m'> > lightred> => ' 33[91m'> > lightgreen> => ' 33[92m'> > yellow> => ' 33[93m'> > lightblue> => ' 33[94m'> > pink> => ' 33[95m'> > lightcyan> => ' 33[96m'> > class> bg:> > black> => ' 33[40m'> > red> => ' 33[41m'> > green> => ' 33[42m'> > orange> => ' 33[43m'> > blue> => ' 33[44m'> > purple> => ' 33[45m'> > cyan> => ' 33[46m'> > lightgrey> => ' 33[47m'> print> (colors.bg.green,> 'SKk'> , colors.fg.red,> 'Amartya'> )> print> (colors.bg.lightgrey,> 'SKk'> , colors.fg.red,> 'Amartya'> )> |
산출:
예제 3: 반복 함수
반복 및 자체 생성 ANSI 이스케이프 시퀀스, 기능을 설계할 수 있습니다. 아래는 컬러 텍스트와 배경을 인쇄하는 Python 프로그램입니다.
파이썬3
def> print_format_table():> > '''> > prints table of formatted text format options> > '''> > for> style> in> range> (> 8> ):> > for> fg> in> range> (> 30> ,> 38> ):> > s1> => ''> > for> bg> in> range> (> 40> ,> 48> ):> > format> => ';'> .join([> str> (style),> str> (fg),> str> (bg)])> > s1> +> => 'x1b[%sm %s x1b[0m'> %> (> format> ,> format> )> > print> (s1)> > print> (> '
'> )> print_format_table()> |
산출: