Tutoriais

Como Imprimir Texto Colorido no Terminal com Python

Ana Maria Gomes 23 mar Intermediário 5xp
Compartilhar

Ao trabalhar com Python, você pode querer adicionar um toque de cor à saída do seu terminal. Seja para destacar uma mensagem de aviso ou para diferenciar entre diferentes tipos de saída, colorir texto pode ser um recurso muito útil. Neste post, vamos explorar como imprimir texto colorido no terminal em Python.

Usando Sequências de Escape ANSI

O método mais comum para colorir texto no terminal é usando sequências de escape ANSI. Essas sequências são como comandos que dizem ao terminal para mudar a cor do texto. Aqui está um exemplo simples de como você pode definir esses códigos de cor em Python:

class bcolors:
    HEADER = '\033[95m'
    OKBLUE = '\033[94m'
    OKCYAN = '\033[96m'
    OKGREEN = '\033[92m'
    WARNING = '\033[93m'
    FAIL = '\033[91m'
    ENDC = '\033[0m'
    BOLD = '\033[1m'
    UNDERLINE = '\033[4m'

Para usar esses códigos de cor, você pode simplesmente concatená-los com o seu texto:

print(bcolors.WARNING + "Aviso: Não há frommets ativos restantes. Continuar?" + bcolors.ENDC)

Ou, se você estiver usando Python 3.6 ou mais recente, você pode usar literais de string formatados para uma sintaxe mais limpa:

print(f"{bcolors.WARNING}Aviso: Não há frommets ativos restantes. Continuar?{bcolors.ENDC}")

Essas sequências de escape ANSI funcionam em sistemas Unix como OS X e Linux, e no Windows 10 se você habilitar a emulação VT100.

Usando o Módulo curses

Para coloração de texto mais complexa e manipulação do terminal, você pode usar o módulo curses, que oferece um nível mais alto de controle sobre o terminal. O Python Curses HowTO é um excelente recurso para começar com este módulo.

Usando o Módulo termcolor

Para uma abordagem mais simples, você pode usar o módulo termcolor, que oferece uma maneira direta de colorir texto:

from termcolor import colored

print(colored('olá', 'red'), colored('mundo', 'green'))

Este método é fácil de usar, mas pode não ser adequado para aplicações mais avançadas como programação de jogos.

Coloração Multiplataforma com Colorama

Se você está procurando uma solução multiplataforma, Colorama é uma excelente escolha para imprimir textos coloridos no terminal. Funciona tanto em sistemas Windows quanto Unix e é compatível com Python 2.7 e Python 3.5+. Veja como você pode usá-lo:

from colorama import init as colorama_init, Fore, Style

colorama_init()

print(f"Isso é {Fore.GREEN}cor{Style.RESET_ALL}!")

Imprimindo Formatos de Cor Personalizados

Se você quer ser criativo com a formatação de texto, pode imprimir uma string com uma cor e estilo personalizados começando com um código ANSI específico e terminando a mudança de estilo com \x1b[0m:

print('\x1b[6;30;42m' + 'Sucesso!' + '\x1b[0m')

Você também pode imprimir uma tabela de opções de formato para ver todas as possibilidades:

def print_format_table():
    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('\n')

print_format_table()

Resumo

Neste post, cobrimos vários métodos para imprimir texto colorido no terminal em Python. Seja escolhendo usar diretamente sequências de escape ANSI, aproveitando o módulo curses para mais controle, optando pela simplicidade do termcolor, ou indo de multiplataforma com Colorama, agora você tem as ferramentas para tornar a saída do seu terminal mais colorida e significativa. Lembre-se de sempre testar suas escolhas de cores para garantir que elas sejam legíveis em diferentes fundos e terminais.

Cursos gratuitos para continuar aprendendo

Curso
Grátis · 2h 13min

Python para iniciantes: do zero ao primeiro projeto

Aprenda sobre variáveis, loops e funções e crie seu primeiro projeto Python em apenas 2 horas!

Curso
Grátis · 3h 47min

Python para dados: do zero à análise completa

Saia do zero e analise dados com Python e Pandas neste curso gratuito com certificado!

Curso
Grátis · 4h 11min

Python para IA: do zero ao primeiro chatbot

Aprenda a programar com Python e explore a inteligência artificial! Crie um chatbot prático que interage com seus próprios dados. Comece agora!

Ver todos os cursos

0 comentários

Exclusivo PRO
Faça parte da discussão

Comente e participe da conversa

Crie sua conta gratuita e compartilhe sua opinião nos comentários.

Entre para a Asimov