Visar färgad text i Python Terminal

Python

Lägga till färg till terminalutgången i Python

Python erbjuder olika sätt att förbättra läsbarheten och utseendet på terminalutdata. En effektiv metod är att använda färgad text, som kan lyfta fram viktig information eller skilja mellan olika typer av data.

I den här guiden kommer vi att utforska olika tekniker och bibliotek som finns tillgängliga i Python för att skriva ut färgad text till terminalen. Oavsett om du är nybörjare eller en erfaren utvecklare, kommer dessa metoder att hjälpa dig att skapa mer visuellt tilltalande kommandoradsapplikationer.

Kommando Beskrivning
\033[91m ANSI escape-kod för röd textfärg.
\033[0m ANSI escape-kod för att återställa textformatering.
colorama.init(autoreset=True) Initierar colorama och ställer in den på att automatiskt återställa färgerna efter varje utskrift.
colorama.Fore.RED Colorama konstant för röd textfärg.
colorama.Style.RESET_ALL Colorama konstant för att återställa all textformatering.
color_map.get(color, Fore.WHITE) Hämtar den angivna färgen från color_map-ordboken, som standard är vit om färgen inte hittas.

Förstå Python Terminal Text Coloring Techniques

Det första skriptet använder för att skriva ut färgad text i terminalen. Dessa escape-koder är sekvenser av tecken som terminalen tolkar som kommandon för att ändra textens utseende. Till exempel, ändrar textfärgen till röd, medan återställer textformateringen. Skriptet definierar en funktion, print_colored, som tar två argument: texten som ska skrivas ut och önskad färg. Inuti funktionen mappar en ordbok färgnamn till deras motsvarande ANSI-koder. Texten skrivs ut med en f-sträng som innehåller lämplig färgkod och återställningskod.

Det andra skriptet använder bibliotek, vilket förenklar plattformsoberoende färgad textutmatning. Biblioteket initieras med , se till att textformateringen återställs efter varje utskriftssats. De funktion i detta skript tar också text och färg som argument. En ordbok mappar färgnamn till colorama.Fore konstanter, som t.ex . Texten skrivs ut med en f-sträng som kombinerar färgkonstanten med texten och konstant för att återställa formateringen. Dessa skript visar två effektiva metoder för att lägga till färg till terminalutdata, vilket förbättrar läsbarheten och användarupplevelsen.

Använda ANSI Escape-koder för färgad text i Python

Python-skript med ANSI Escape-koder

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}")

Utnyttja 'colorama'-biblioteket för terminaltextfärgning

Python-skript som använder 'colorama'-biblioteket

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}")

Utforska ytterligare bibliotek för färgad text i Python

Utöver att använda och den bibliotek, ett annat kraftfullt bibliotek för färgad text i Python är . Detta bibliotek tillhandahåller ett enkelt API för att skriva ut färgad text i terminalen. Den stöder olika textattribut som fetstil, understrykning och bakgrundsfärger. Att använda termcolor, måste du först installera den med pip. När du har installerat den kan du använda den och funktioner. De funktion returnerar en sträng med lämpliga escape-sekvenser, while cprint skriver ut texten direkt till terminalen.

Ett annat användbart bibliotek är , som inte bara stöder färgad text utan också möjliggör avancerad formatering som tabeller, markdown-rendering och syntaxmarkering. Detta gör det till ett mångsidigt verktyg för att skapa visuellt tilltalande kommandoradsapplikationer. Att använda , installera den via pip och använd sedan dess funktion för förbättrad textformatering. Dessa bibliotek utökar dina alternativ för terminaltextstil, vilket gör att du kan skapa mer engagerande och användarvänliga CLI-verktyg.

Vanliga frågor om färgad text i Python

  1. Hur installerar jag termcolor-biblioteket?
  2. Du kan installera termcolor-biblioteket med kommandot .
  3. Vad är skillnaden mellan colorama och termcolor?
  4. Medan båda biblioteken används för färgad text i terminalen, är mer fokuserad på plattformsoberoende kompatibilitet, medan ger ett enklare API för färg- och textattribut.
  5. Kan jag använda både colorama och termcolor i samma skript?
  6. Ja, du kan använda båda biblioteken i samma skript om du behöver funktioner från båda. Se bara till att du initierar och använder dem korrekt.
  7. Hur skriver jag ut fet text med termcolor?
  8. Du kan skriva ut fet text genom att använda attributparametern i funktion, t.ex. .
  9. Är det möjligt att färga bakgrunden på text i terminalen?
  10. Ja båda och stödja bakgrundsfärger. I , kan du använda konstanter som Back.RED, och i , kan du använda parameter.
  11. Hur återställer jag textformatering i rich?
  12. I den biblioteket återställs textformateringen automatiskt i slutet av utskriftsfunktionsanropet, liknande automatisk återställningsfunktion.
  13. Kan jag använda dessa bibliotek för att formatera text i loggfiler?
  14. Dessa bibliotek är främst designade för terminalutmatning. För att formatera text i loggfiler kan du behöva använda ett loggbibliotek med färgstöd eller lägga till ANSI-koder manuellt om loggvisaren stöder dem.
  15. Vilka andra bibliotek finns för avancerad terminalformatering?
  16. Förutom , , och , kan du utforska bibliotek som blessed och för avancerade terminalformateringsalternativ.

Att använda färgad text i Python-terminaler är ett kraftfullt sätt att förbättra klarheten och tilltalandet av kommandoradsapplikationer. Genom att utnyttja ANSI escape-koder eller bibliotek som colorama, termcolor och rich kan utvecklare enkelt lägga till färger och textattribut till sina utdata. Dessa tekniker gör inte bara terminalutgången mer visuellt tilltalande utan hjälper också till att lyfta fram viktig information och förbättra den övergripande användarinteraktionen.