Wie gibt man in Python einen Unicode-String auf der Windows-Konsole aus?
📁 Python
Ein einfacher print() funktioniert nicht. Der Interpreter stürzt mit der Beschwerde ab, dass er selbst Unicode nicht in die Codierung konvertieren kann, die in der Windows-Konsole verwendet wird. Kann man ihm vielleicht irgendwie helfen? Möglicherweise gibt es ein Modul, das dies tun kann.
"
Update: verwendet Unicode API für Ein-/Ausgabe in die Konsole wie das unten erwähnte Paket (Details in ). Standardmäßig werden beliebige Unicode-Zeichen unterstützt. Einfaches print(unicode_string) funktioniert jetzt ohne Installation zusätzlicher Software (eine Konsolenschriftart, die die gewünschten Zeichen unterstützt, muss dennoch konfiguriert werden).
An der Grenze zur Windows-Konsole wird Unicode verwendet, intern verwenden sys.stdin, sys.stdout, sys.stderr die utf-8-Kodierung. Dies kann Code beschädigen, der die binäre Schnittstelle zur Ausgabe in die Konsole verwendet hat und entsprechend die OEM-Codepage, z. B. die cp866-Kodierung, verwendet hat. cp866 ist nicht kompatibel mit utf-8. Es ist notwendig, entweder den Code zu korrigieren, damit er Text und nicht Bytes in die Konsole schreibt.
Anmelden um eine Antwort zu hinterlassen