logo

Come stampare testo colorato in Python

In questo tutorial impareremo come stampare testo colorato in Python. Le applicazioni della riga di comando ottengono lo stesso colore del terminale. A volte, vogliamo stampare il testo nell'output per attirare l'attenzione dell'utente. In alcune circostanze, un tocco di colore può fare la differenza e Python rappresenta la soluzione più semplice. I programmatori utilizzano testo colorato per attirare l'attenzione dell'utente per alcuni messaggi specifici.

Stampa testo colorato nel terminale utilizzando Colore semplice

Python fornisce un eccellente modulo 'colore semplice' che ci consente di mostrare testo colorato sul terminale. Può stampare testo in vari colori, come blu, verde, magenta, rosso, giallo e molti altri.

Ci consente anche di applicare molti stili, come grassetto, scuro, corsivo, brillante, sottolineato, inverso e lampeggiante. Il modulo simple-color non è incluso nel pacchetto Python, quindi dobbiamo installarlo prima di usarlo. Per installarlo, copia il comando seguente e incollalo nel terminale.

 pip install simple-colors 

O

 python -m pip install simple-colors 

Una volta installato il modulo, possiamo personalizzare/stilare il nostro codice utilizzando la sintassi mostrata nell'esempio seguente.

Esempio -

 import simple_colors # colored text print('Normal:', simple_colors.blue('Welcome at Javatpoint.com!')) # BOLD and colored text print('BOLD: ', simple_colors.green('Welcome at Javatpoint.com!', 'bold')) # BOLD and Underlined and colored text print('BOLD and Underlined: ', simple_colors.red('Welcome at Javatpoint.com!', ['bold', 'underlined'])) 

Produzione:

intero Java
Come stampare testo colorato in Python

Spiegazione -

Nel codice precedente, abbiamo utilizzato la tecnica specificata e abbiamo fornito il tipo di formattazione (grassetto, corsivo, sottolineato, ecc.) come input alla funzione colore per applicare stili e colori al testo. Possiamo fornire diversi stili di formattazione alla funzione inserendoli in un elenco.

Stampa output di testo colorato utilizzando la sequenza di escape ANSI

Possiamo utilizzare i codici di escape ANSI per modificare il colore dell'output del testo in un'applicazione Python, migliorando la leggibilità e la trama del codice. È molto utile per evidenziare gli errori. L'istruzione print viene immediatamente aggiornata con i codici escape.

 print('33[48;5;236m') 

Nei terminali vengono comunemente utilizzati due schemi di colori:

  1. 16 colori (8 per lo sfondo e 8 per il primo piano)
  2. 256 colori diversi

L'opzione a 16 colori e Colore per output

ESCESQ STILE
Codici di fuga Stile del testo
Esadecimale Normale: 0
x1b[ Grassetto: 1
Unicode Luce: 2
u001b[ In corsivo: 3
ottale: Sottolineato: 4
33[ Lampeggio: 5

Per metterlo alla prova, stampa un motivo a colori disordinato con scritte rosse a tinta unita e uno sfondo giallo. Il testo in grassetto è indicato dal codice di stile 2. I codici colore per il testo rosso in primo piano sono 31 e 43 per lo sfondo giallo. Tenendo questo in mente, la sintassi per descrivere questo layout è la seguente:

256 colori diversi

Possiamo immergerci subito dopo aver compreso la sintassi di uno schema a 256 colori. Lavorare con 256 colori è leggermente diverso da lavorare con lo schema a 16 colori.

Alcuni terminali offrono la possibilità di eseguire sequenze di escape specifiche per modificare il tono, il colore e l'aspetto del materiale stampato. Queste sequenze di escape sono note come sequenze di escape ANSI poiché lo standard ANSI ne specifica l'applicazione.

Comprendiamo il seguente esempio:

Esempio -

 text_val = 'Javatpoint.com' print('Uncoloured text: ', text_val) colored_s = '33[38;5;4m' + text_val print('Coloured text: ', colored_s) 

Comprendiamo il seguente esempio:

Esempio -

 def colors_text256(color_): num1 = str(color_) num2 = str(color_).ljust(3, ' ') if color_ % 16 == 0: return(f'33[38;5;{num1}m {num2} 33[0;0m
') else: return(f'33[38;5;{num1}m {num2} 33[0;0m') print('
The 256 colors scheme is:') print(' '.join([colors_text256(x) for x in range(256)])) 

Produzione:

Come stampare testo colorato in Python

Stampa testo colorato utilizzando il modulo Termcolor

Python fornisce un'altra libreria per il testo colorato chiamata Termcolor, che utilizza la formattazione del colore ANSII.

Questo modulo consente attributi di formattazione del testo e proprietà diverse per vari terminali. Inoltre, contiene più colori di carattere, come blu, rosso e verde, nonché evidenziazioni del testo come magenta, ciano e bianco.

Essendo la libreria a colori semplici, dobbiamo installarla perché non è inclusa nella libreria principale di Python. Per installarlo, digitare il seguente comando nel terminale.

 pip install termcolor 

Comprendiamo il seguente codice.

Esempio 1:

 from termcolor import colored text = colored('Welcome at Javatpoint.com!', 'green'', attrs=['bold']) print(text) 

Esempio - 2:

 from termcolor import colored text = colored('Welcome at Javatpoint.com!', 'yellow', attrs=['bold']) print(text) 

Produzione:

Come stampare testo colorato in Python

Esempio - 3:

 from termcolor import colored text = colored('Welcome at Javatpoint.com!', 'red', attrs=['bold']) print(text) 

Produzione:

Come stampare testo colorato in Python

Stampa testo colorato utilizzando il modulo Colorma

Colorma non fa nulla su altre piattaforme. Window sostituirà la sequenza di escape ANSI chiamando init(). L'init lascia Colorama prima che il programma termini(). Si fisserà stdout E stderr ritornare ai loro valori originali. Per installarlo, digitare il seguente comando nel terminale e premere Invio.

 pip install colorama 

Comprendiamo il seguente esempio:

Esempio -

 from colorama import Fore, Style print(Style.BRIGHT + 'Bold text') print(Fore.YELLOW + 'We are printing the text in yellow color') print(Style.RESET_ALL) print('This line has no effect of coloroma') 

Produzione:

Come stampare testo colorato in Python

Vediamo un altro esempio -

vlc per scaricare video da youtube

Esempio -

 from colorama import init from termcolor import colored init() print(colored('Hello and Welcome to at JavaTpoint.com!', 'blue', attrs=['bold'])) 

Produzione:

Come stampare testo colorato in Python

Stampa testo colorato utilizzando il modulo colorato

È un pacchetto dai colori elementari utilizzato per formattare e colorare il testo sui terminali. Deve prima essere installato utilizzando pip perché non è un modulo integrato. Vediamo il comando seguente.

 pip install colored 

Comprendiamo il seguente esempio.

Esempio -

 from colored import fore, back, style print (fore.RED + back.YELLOW + style.BOLD + 'Hello at JavaTpoint.com!!!' + style.RESET) 

Stampa testo colorato utilizzando un oggetto HTML

Un metodo text() formattato print nel toolkit Prompt è compatibile con la funzione print() incorporata. Ci permette di formattare; colori e possiamo mostrare la formattazione basata su HTML della stringa utilizzando HTML. L'oggetto HTML comprende il file , e tag, necessari per grassetto, corsivo e sottolineato.

Dobbiamo installare il pacchetto utilizzando il seguente comando.

 pip install prompt-toolkit 

Comprendiamo il seguente esempio:

Esempio -

 from prompt_toolkit import print_formatted_text, HTML print_formatted_text(HTML(&apos; <b>Hello Welcome to Javatpoint</b> &apos;)) print_formatted_text(HTML(&apos; <i>Hello Welcome to Javatpoint</i> &apos;)) print_formatted_text(HTML(&apos;Hello Welcome to Javatpoint&apos;)) 

Produzione:

Ciao, benvenuto in Javatpoint

Ciao, benvenuto in Javatpoint

Ciao, benvenuto in Javatpoint

Esempio -

 from prompt_toolkit import print_formatted_text, HTML from prompt_toolkit.styles import Style sty = Style.from_dict({&apos;y&apos;: &apos;#44ff00 bold&apos;,}) print_formatted_text(HTML(&apos; Hello and welcome to at Javatpoint.com!&apos;), style=sty) 

Produzione:

Come stampare testo colorato in Python

Poiché tutti i tag HTML sono mappati alle classi da un foglio di stile, puoi anche nominare uno stile per un tag personalizzato.

Conclusione

Questo tutorial includeva come stampare il testo colorato nell'output. Questa libreria è utile per attirare l'attenzione dell'utente oppure può essere utilizzata per evidenziare alcuni errori specifici.