私はこれに関連するいくつかの投稿を見ましたが、明確な答えはありません。文字列s=u'\xe9\xe1'
を、ASCIIのみをサポートする端末(例えば、)に印刷したいとしましょう。でもゴミ - - というよりも例外を発生させる(UnicodeEncodeErrorを)すなわち、私が何かを印刷するための文字列にしたいPythonのデフォルトの文字エンコーディング処理
import sys
s = u'\xe9\xe1'
s = s.encode(sys.stdout.encoding, 'replace').decode(sys.stdout.encoding)
print(s)
:デフォルトの動作として、以下を設定するには、どのような方法があります。私はpython3.5を使用しています。
私はUTF-8を含む可能性のあるすべての文字列についてこれを書かないようにしたいと思います。
これはまさに私が探していたものです。 (私はオプション2に行った) – ws6079