ホームページ > バックエンド開発 > Python チュートリアル > Windows コンソールで Unicode 文字を正しく表示するにはどうすればよいですか?

Windows コンソールで Unicode 文字を正しく表示するにはどうすればよいですか?

Mary-Kate Olsen
リリース: 2024-12-19 18:25:14
オリジナル
703 人が閲覧しました

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

Windows コンソールでの Unicode 表現

Windows コンソールで文字列を出力しようとすると、開発者はエラー「UnicodeEncodeError: 'charmap」が発生する場合があります。 ' コーデックは文字をエンコードできません。」この問題は、コンソールが特定の Unicode 文字を処理できないために発生します。

回避策:

Python 3.6 以降:

  • Python 3.6 は PEP 528 を実装し、デフォルトのコンソールエンコーディングを次のように切り替えました。 UTF-8。これにより、回避策を必要とせずに Unicode 文字を直接表示できるようになります。

Python 3.5 以前:

  • Win-Unicode-コンソール: win-unicode-console パッケージをインストールします。これにより、 console.
  • WriteConsoleW() API: Unicode 文字列をコンソールに直接出力するには、WriteConsoleW() API を使用します。
  • PYTHONIOENCODING: PYTHONIOENCODING 環境変数を「:replace」に設定して、エンコードできない文字を「?」文字。

PYTHONIOENCODING の設定:

set PYTHONIOENCODING=:replace
ログイン後にコピー

文字の置換:

エンコードできない文字を " に置き換える場合?」で十分な場合は、以下を使用できます:

print(u'[\N{EURO SIGN}]')  # Replaces the Euro sign with "?"
ログイン後にコピー

注:

Python 3.6 では、 PYTHONLEGACYWINDOWSIOENCODING が非に設定されていない限り、対話型コンソール バッファーでは PYTHONIOENCODING は無視されます。 -空の文字列。

以上がWindows コンソールで Unicode 文字を正しく表示するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート