[Python-de] print von Nicht-ASCII-Zeichen
Diez B. Roggisch
deets at web.de
Die Aug 29 11:15:35 CEST 2006
> Danke das funktioniert ohne Fehlermeldung, aber die Windows-Console
> (cmd.exe) interpretiert das 'ä' als 2 Zeichen. Das ist zwar nicht weiter
> tragisch, aber zumindest unschön, weil's ohne dem ja korrekt dargestellt
> wird.
Das kannst du durch verveden von cp1252 statt utf-8 reparieren.
Wie MvL ja schon ausgefuehrt hat, versucht python das encoding des terminals
zu raten. Wenn das nicht geht, muss man die eben "von Hand" synchronisieren.
Unter meinen *nix OSsen kann ich halt immer utf-8 einstellen, darum habe ich
das gemacht.
> Ok ich kann noch eine Abfrage 'sys.stdout.isatty()' einbauen, aber
> irgendwie ist das dann von hinten durch die Brust ins Auge...
>
> ....
>
> Moment Kommando zurück, das funktioniert nur mit XP und nicht mit W2k.
> Unter W2k beschwert sich Python mit:
> UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in
> position 0: ordinal not in range(128)
> Ausserdem interpretiert cmd.exe unter W2k das 'ä' als 2 Zeichen, wenn
> stdout nicht verbogen wird.
Kannst du das vielleicht in nem kleinen script illustrieren?
Diez
More information about the python-de
mailing list