Das Drucken von Unicode-Zeichen auf stdout in Python druckt falsche Glyphen
Ich möchte eine Reihe von Unicode-Zeichen auf meinem Eingabeaufforderungsterminal drucken. Selbst wenn ich die Kodierung auf "UTF-8" erzwinge, druckt das Terminal etwas Müll.
$python -c "import sys; print sys.stdout.write(u'\u2044'.encode('UTF-8'))"
ΓüäNone
$python -c "import sys; print sys.stdout.encoding"
cp437
Meine Standard-Terminalkodierung ist cp437 und ich versuche, das zu überschreiben. Die erwartete Ausgabe ist hier ein Bruchstrich (⁄).
http://www.fileformat.info/info/unicode/char/2044/index.htm
Der gleiche Code funktioniert auf meinem Mac-Terminal einwandfrei und verwendet UTF-8 als Standardkodierung. Gibt es eine Möglichkeit, dies auch unter Windows anzuzeigen? Die Schriftart, die ich in der Windows-Eingabeaufforderung verwende, ist consolas.
Ich möchte, dass mein Code mit beliebigen Unicode-Zeichen funktioniert, nicht nur in diesem speziellen Beispiel, da die Eingabe ein Ergebnis einer Webabfrage ist und ich keine Kontrolle darüber habe.