Prikaz barvnega besedila v terminalu Python

Prikaz barvnega besedila v terminalu Python
Prikaz barvnega besedila v terminalu Python

Dodajanje barve izhodu terminala v Pythonu

Python ponuja različne načine za izboljšanje berljivosti in videza izpisa terminala. Ena od učinkovitih metod je uporaba barvnega besedila, ki lahko poudari pomembne informacije ali razlikuje med različnimi vrstami podatkov.

V tem priročniku bomo raziskali različne tehnike in knjižnice, ki so na voljo v Pythonu za tiskanje barvnega besedila na terminal. Ne glede na to, ali ste začetnik ali izkušen razvijalec, vam bodo te metode pomagale ustvariti vizualno privlačnejše aplikacije ukazne vrstice.

Ukaz Opis
\033[91m Ubežna koda ANSI za rdečo barvo besedila.
\033[0m Ubežna koda ANSI za ponastavitev oblikovanja besedila.
colorama.init(autoreset=True) Inicializira colorama in jo nastavi na samodejno ponastavitev barv po vsakem tiskanju.
colorama.Fore.RED Konstanta Colorama za rdečo barvo besedila.
colorama.Style.RESET_ALL Konstanta Colorama za ponastavitev celotnega oblikovanja besedila.
color_map.get(color, Fore.WHITE) Pridobi podano barvo iz slovarja color_map, privzeto je bela, če barva ni najdena.

Razumevanje tehnik barvanja besedila terminala Python

Prvi skript uporablja ANSI escape codes za tiskanje barvnega besedila v terminalu. Te ubežne kode so zaporedja znakov, ki jih terminal interpretira kot ukaze za spreminjanje videza besedila. na primer \033[91m spremeni barvo besedila v rdečo, medtem ko \033[0m ponastavi oblikovanje besedila. Skript definira funkcijo, print_colored, ki sprejme dva argumenta: besedilo za tiskanje in želeno barvo. Znotraj funkcije slovar preslika imena barv v njihove ustrezne kode ANSI. Besedilo je natisnjeno z nizom f, ki vključuje ustrezno barvno kodo in kodo za ponastavitev.

Drugi skript uporablja colorama knjižnico, ki poenostavi izpis barvnega besedila na različnih platformah. Knjižnica se inicializira z colorama.init(autoreset=True), ki zagotavlja, da se oblikovanje besedila ponastavi po vsakem stavku za tiskanje. The print_colored funkcija v tem skriptu kot argumenta sprejme tudi besedilo in barvo. Slovar preslika imena barv v colorama.Fore konstante, kot npr Fore.RED. Besedilo je natisnjeno z nizom f, ki združuje barvno konstanto z besedilom in Style.RESET_ALL konstanto za ponastavitev oblikovanja. Ti skripti prikazujejo dve učinkoviti metodi za dodajanje barve izpisu terminala, izboljšanje berljivosti in uporabniške izkušnje.

Uporaba ubežnih kod ANSI za barvno besedilo v Pythonu

Skript Python z ubežnimi kodami ANSI

def print_colored(text, color):
    color_codes = {
        "red": "\033[91m",
        "green": "\033[92m",
        "yellow": "\033[93m",
        "blue": "\033[94m",
        "magenta": "\033[95m",
        "cyan": "\033[96m",
        "white": "\033[97m",
    }
    reset_code = "\033[0m"
    print(f"{color_codes.get(color, color_codes['white'])}{text}{reset_code}")

Izkoriščanje knjižnice 'colorama' za barvanje terminalskega besedila

Python skript z uporabo knjižnice 'colorama'

from colorama import init, Fore, Style
init(autoreset=True)
def print_colored(text, color):
    color_map = {
        "red": Fore.RED,
        "green": Fore.GREEN,
        "yellow": Fore.YELLOW,
        "blue": Fore.BLUE,
        "magenta": Fore.MAGENTA,
        "cyan": Fore.CYAN,
        "white": Fore.WHITE,
    }
    print(f"{color_map.get(color, Fore.WHITE)}{text}{Style.RESET_ALL}")

Raziskovanje dodatnih knjižnic za barvno besedilo v Pythonu

Poleg uporabe ANSI escape codes in colorama še ena zmogljiva knjižnica za barvno besedilo v Pythonu je termcolor. Ta knjižnica ponuja enostaven API za tiskanje barvnega besedila v terminalu. Podpira različne atribute besedila, kot so krepko, podčrtano in barve ozadja. Uporabiti termcolor, ga morate najprej namestiti z uporabo pip. Ko je nameščen, ga lahko uporabljate colored in cprint funkcije. The colored funkcija vrne niz z ustreznimi ubežnimi zaporedji, medtem ko cprint natisne besedilo neposredno na terminal.

Druga uporabna knjižnica je rich, ki ne podpira le barvnega besedila, temveč omogoča tudi napredno oblikovanje, kot so tabele, upodabljanje oznak in označevanje sintakse. Zaradi tega je vsestransko orodje za ustvarjanje vizualno privlačnih aplikacij ukazne vrstice. Uporabiti rich, ga namestite prek pip in nato uporabite njegov print funkcijo za izboljšano oblikovanje besedila. Te knjižnice razširjajo vaše možnosti za oblikovanje terminalskega besedila, kar vam omogoča ustvarjanje privlačnejših in uporabniku prijaznejših orodij CLI.

Pogosta vprašanja o barvnem besedilu v Pythonu

  1. Kako namestim knjižnico termcolor?
  2. Knjižnico termcolor lahko namestite z ukazom pip install termcolor.
  3. Kakšna je razlika med colorama in termcolor?
  4. Medtem ko se obe knjižnici uporabljata za barvno besedilo v terminalu, colorama je bolj osredotočen na združljivost med platformami, medtem ko termcolor ponuja preprostejši API za barvne in besedilne atribute.
  5. Ali lahko v istem skriptu uporabim colorama in termcolor?
  6. Da, obe knjižnici lahko uporabite v istem skriptu, če potrebujete funkcije obeh. Prepričajte se, da jih pravilno inicializirate in uporabljate.
  7. Kako natisnem krepko besedilo s termcolor?
  8. Krepko besedilo lahko natisnete z uporabo parametra atributa v colored funkcija, npr. colored('Hello, World!', 'red', attrs=['bold']).
  9. Ali je mogoče obarvati ozadje besedila v terminalu?
  10. Ja, oboje colorama in termcolor podpira barve ozadja. noter colorama, lahko uporabite konstante, kot je Back.RED, in v termcolor, lahko uporabite on_color parameter.
  11. Kako ponastavim oblikovanje besedila v obogatenem načinu?
  12. V rich knjižnici se oblikovanje besedila samodejno ponastavi na koncu klica funkcije tiskanja, podobno kot colorama's funkcija samodejne ponastavitve.
  13. Ali lahko uporabim te knjižnice za oblikovanje besedila v dnevniških datotekah?
  14. Te knjižnice so zasnovane predvsem za terminalski izhod. Za oblikovanje besedila v dnevniških datotekah boste morda morali uporabiti knjižnico za beleženje s podporo za barve ali ročno dodati kode ANSI, če jih pregledovalnik dnevnikov podpira.
  15. Katere so druge knjižnice za napredno terminalsko oblikovanje?
  16. Poleg tega colorama, termcolor, in rich, lahko raziskujete knjižnice, kot je blessed in texttable za napredne možnosti oblikovanja terminala.

Končne misli o barvanju besedila terminala Python

Uporaba barvnega besedila v terminalih Python je močan način za izboljšanje jasnosti in privlačnosti aplikacij ukazne vrstice. Z uporabo ubežnih kod ali knjižnic ANSI, kot so colorama, termcolor in rich, lahko razvijalci preprosto dodajajo barve in besedilne atribute svojim rezultatom. Te tehnike ne samo, da naredijo izpis terminala bolj vizualno privlačen, ampak tudi pomagajo pri poudarjanju pomembnih informacij in izboljšanju splošne uporabniške interakcije.