Mhh, wie bekomme ich Python unter Windows cmd.exe dazu, mir das Gradzeichen auszuspucken?
1 | # -*- coding: utf-8 -*- |
2 | print "°" |
Erzeugt zwei Müllzeichen
1 | print "°" |
Erzeugt ein Müllzeichen Direkt:
1 | >echo ° |
2 | ° |
funktioniert dagegen.
|
Forum: PC-Programmierung python, cmd.exe: print "°"Mhh, wie bekomme ich Python unter Windows cmd.exe dazu, mir das Gradzeichen auszuspucken?
Erzeugt zwei Müllzeichen
Erzeugt ein Müllzeichen Direkt:
funktioniert dagegen. wow, google is fast. for international folks: centigrade, degree symbol, garbage, celsius. Dein Eingabetext ist UTF-8, das windows cmd.exe spricht vermutlich CP 1252. Probier mal
Viele Grüße, Simon Hat dasselbe Ergebnis wie ein nicht-UTF-8 kodiertes Skript:
das
macht das:
Font im "Dos-Fenster" ist Lucida Console Das "DOS-Fenster" ist keines, aber es nutzt standardmäßig CP437 bzw. 850, und nicht 1252. Mit den Win32-API-Funktionen SetConsoleOutputCP und SetConsoleCP lässt sich die von Konsolenprozessen verwendete Codepage einstellen. Sinnvolle Resultate erhält man allerdings nur, wenn die Konsole nicht einen der standardmäßig eingerichteten Pixelfonts verwendet, denn die sind ausschließlich auf CP437/850 ausgerichtet. "Lucida Console" ist genauso wie "Andale Mono" oder "Consolas" ein vollwertiger Truetype-Font, weist dieses Problem also nicht auf. Seit Vista ist es übrigens endlich möglich, die verwendete Schriftart eines Konsolenfenster programmatisch festzulegen, dazu dient die Win32-API-Funktion SetCurrentConsoleFontEx. Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.
|
|