Seite 1 von 1
print anweisung formatieren
Verfasst: Samstag 1. Oktober 2022, 08:39
von Kobra23759
Hallo ich bitte um Hilfe,
kann mir jemand bei der ausgabe von print in bold mit einer bestimmten Farbe helfen
Mein Versuch hat nicht geplappt
Vielen Dank
from colorama import Fore, Back, Style
bold='\033[1m'
underline='\033[4m'
ent="\033[0m"
print("Vordergrund")
print(f"{Fore.RED}Red{Style.RESET_ALL}")
print("Hintergrund")
print(f"{Back.BLUE}Red{Style.RESET_ALL}")
print("Weiter")
print(bold+"BOLD"+ent)
print(bold+"Underline"+ent)
Re: print anweisung formatieren
Verfasst: Samstag 1. Oktober 2022, 09:48
von __deets__
Kann dein Terminal das denn? Denn ansonsten sieht das ganz gut aus.
Re: print anweisung formatieren
Verfasst: Samstag 1. Oktober 2022, 09:52
von Kobra23759
danke für die Zwischenantwort
die Farbeinstellung klappt gut
ich bekomme aber keine fette bzw unterstrichene Ausgabe hin
Ich benutze Spyder
Re: print anweisung formatieren
Verfasst: Samstag 1. Oktober 2022, 10:08
von __blackjack__
@Kobra23759: Nicht jedes Terminal oder jeder Terminal-Emulator unterstützt alle Steuercodes. Und manche stellen sie anders dar, „bold“ beispielsweise heller aber nicht fett. Manchmal kann es auch an den eingestellten/verfügbaren Schriftarten liegen, das beispielsweise eine Schriftart nicht in fett oder kursiv vorhanden ist, und das Anzeigeprogramm das nicht ”künstlich” macht.
Re: print anweisung formatieren
Verfasst: Samstag 1. Oktober 2022, 10:14
von August1328
Ich nutze auch colorama und habe nen Trick gebraucht, daß das in nem normalen command Fenster unter Windows funktioniert.
In der Konsole von VS Code funktioniert es einwandfrei, auch Dein Code, aber wenn ich in nem extra Fenster starte, sehe ich das:
Vordergrund
←[31mRed←[0m
Hintergrund
←[44mRed←[0m
Weiter
←[31m←[1mBOLD←[0m
←[4mUnderline←[0m
Das kenne ich. Ich bin durch Zufall darauf gestossen, daß es funktioniert, wenn man colorama 1x aufruft und dann das Konsolen Fenster 1x cleared, also "cls" ausführt.
Dann ist da noch ein kleiner Schreibfehler vor underline, mit "bold" wird nichts unterstrichen werden. Und wenn Du fett / bold mit rot Schrift willst, einfach kombinieren.
So funktioniert bei mir alles...
Code: Alles auswählen
from time import sleep
from colorama import Fore, Back, Style
from os import system
bold='\033[1m'
underline='\033[4m'
ent="\033[0m"
print(f"{Fore.RED}Farbe aktivieren{Style.RESET_ALL}\n")
sleep(1.5)
system('cls')
print("Vordergrund")
print(f"{Fore.RED}Red{Style.RESET_ALL}")
print("Hintergrund")
print(f"{Back.BLUE}Red{Style.RESET_ALL}")
print("Weiter")
print(f"{Fore.RED}{bold}BOLD{ent}")
print(underline+"Underline"+ent)
Vielleicht ist da nen bug in colorama oder man muss es anders "starten", keine Ahnung. Ich nutze ein kurzes "cls" in allen Skripten, wo ich colorama einsetze und es klappt problemlos.
Gruß
Re: print anweisung formatieren
Verfasst: Samstag 1. Oktober 2022, 10:22
von __blackjack__
@August1328: Die Dokumentation sagt ziemlich deutlich das man `colorama.init()` aufrufen muss. Ich meine wo ist der Sinn ein Cross-Plattform-Modul zu verwenden wenn man dann ein systemsspezifisches externes Programm aufruft. Und das dann auch noch mit `os.system()`.

Re: print anweisung formatieren
Verfasst: Samstag 1. Oktober 2022, 10:44
von August1328

ich wusste, daß ich wieder ne Watschn abkriege. Das init() habe ich übersehen, aber das kommt davon wenn man die Doku nur überfliegt. Aber Kobra23759 hat´s auch nicht genutzt...
Dann werde ich auch das mal ändern und kann os.system raus werfen.
Danke
Re: print anweisung formatieren
Verfasst: Montag 3. Oktober 2022, 07:35
von Kobra23759
danke an alle
Re: print anweisung formatieren
Verfasst: Dienstag 4. Oktober 2022, 19:58
von DeaD_EyE
Schau dir das mal an:
https://github.com/Textualize/rich
Am besten gefällt mir das:
Code: Alles auswählen
console.print("Where there is a [bold cyan]Will[/bold cyan] there [u]is[/u] a [i]way[/i].")
Die Bibliothek ist so erfolgreich, dass der Maintainer ein Unternehmen drumherum gegründet hat.
Eine weitere Python-Erfolgsgeschichte. Das muss man sich erst mal vorstellen.
Da geht es nur um Text im Terminal und das im Jahr 2022. Die Terminal-Zeiten sind noch lange nicht vorbei.
Re: print anweisung formatieren
Verfasst: Mittwoch 5. Oktober 2022, 07:36
von Kobra23759
alle dead_eye,
welche Bibliothek muß ich für console.print noch gleich Laden
Re: print anweisung formatieren
Verfasst: Mittwoch 5. Oktober 2022, 08:03
von karolus
Kobra23759 hat geschrieben: Mittwoch 5. Oktober 2022, 07:36
alle dead_eye,
welche Bibliothek muß ich für console.print noch gleich Laden
RTFM ←
https://github.com/Textualize/rich