Heim > Backend-Entwicklung > Python-Tutorial > Wie kann ich Unicode-Zeichen in der Windows-Konsole richtig anzeigen?

Wie kann ich Unicode-Zeichen in der Windows-Konsole richtig anzeigen?

Mary-Kate Olsen
Freigeben: 2024-12-19 18:25:14
Original
666 Leute haben es durchsucht

How Can I Properly Display Unicode Characters in the Windows Console?

Unicode-Darstellung in der Windows-Konsole

Beim Versuch, Zeichenfolgen in der Windows-Konsole zu drucken, stoßen Entwickler möglicherweise auf den Fehler „UnicodeEncodeError: 'charmap „Codec kann Zeichen nicht kodieren.“ Dieses Problem entsteht dadurch, dass die Konsole bestimmte Unicode-Zeichen nicht verarbeiten kann.

Problemumgehungen:

Python 3.6 und höher:

  • Python 3.6 hat PEP 528 implementiert und die Standardkonsolenkodierung auf geändert UTF-8. Dadurch können Unicode-Zeichen direkt angezeigt werden, ohne dass Workarounds erforderlich sind.

Python 3.5 und früher:

  • Win-Unicode- Konsole: Installieren Sie das Paket win-unicode-console, das die Unicode-Unterstützung in der aktiviert Konsole.
  • WriteConsoleW() API: Verwenden Sie die WriteConsoleW() API, um Unicode-Zeichenfolgen direkt auf der Konsole zu drucken.
  • PYTHONIOENCODING: Legen Sie fest PYTHONIOENCODING-Umgebungsvariable auf „:replace“, um nicht kodierbare Zeichen durch „?“ zu ersetzen. Zeichen.

PYTHONIOENCODING einstellen:

set PYTHONIOENCODING=:replace
Nach dem Login kopieren

Zeichen ersetzen:

Wenn nicht kodierbare Zeichen durch „ersetzt werden“ ?" ausreicht, können Sie Folgendes verwenden:

print(u'[\N{EURO SIGN}]')  # Replaces the Euro sign with "?"
Nach dem Login kopieren

Hinweis:

In Python 3.6 wird PYTHONIOENCODING für interaktive Konsolenpuffer ignoriert, es sei denn, PYTHONLEGACYWINDOWSIOENCODING ist auf „non“ gesetzt -leerer String.

Das obige ist der detaillierte Inhalt vonWie kann ich Unicode-Zeichen in der Windows-Konsole richtig anzeigen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage